Skip to main content

Full text of "68 Micro Journal Volume 05 Number 05"

See other formats


7 



$2.95usa 



Aostraifa 


A 


$ 475 


N&wZoaiand 


NZ $4 75 


Sirw&B 


S 


$ 945 


Hong Kong 


H 32350 


Mrtays* 


M 


5 9 45 


Sweden 


30SEK 



MICRO JOURNN. 




YOUR CHCDICEsmart either way 



Over 140 software driven functions 

82 x 24 or 82 x 20 screen format — software selectable 

High resolution 7x12 matrix characters — P-31 green phosphor 

Upper/lower case character set — plus graphics character set 

56-key alphanumeric keyboard — plus 12-key cursor, numeric pad 

Internal editing functions — insert, delete, scroll, roll, slide, etc. 

Parallel printer I/O port 

50 to 38,400 baud operation — programmable 

Cursor type, cursor position, print control characters, protected fields, 
shift inversion, dual intensity and many other features 



8212 — twelve-inch diagnonal screen or 8209 — nine-inch diagnonal screen 




SOUTHWEST TECHNICAL PRODUCTS CORPORATION 

219 W. RHAPSODY 

SAN ANTONIO. TEXAS 78216 (512) 344 0241 




from the 8 bit 6809 microprocessor allowing it to 
outperform many 16 bit systems 



With the UnlREX 1 " Operating System, the 
6 bit 6809 microprocessor con 
perform as well as larger CPUs In a multi- 
user, multi-tasking environment. 

Independently developed from the 
ground up, UnlFLEX' 1 ' closely models the 
features round In the UNIX* Operating 
System. And In two years of use. UniFlEX'* 
has proven the abilities oft he 6809 to 
perform lorgesystem functions when 
Incorporated Into a property designed 
malntrome. 

Some of the features supported include: 

• full mulil-user, multi-tasking capabilities 

• hierarchical file systems 

• device Independent I/O 

• four Gigabyte disk capacities 

• full file protection 

• inter-task communication vlo pipes 

• I/O redirection 

• task swopping for efficient memoiy 
usage 

• full random-access flies 

• comprehensive shell command 
language 

• foreground-background fobs 

• electronic moll and prlnterspooltng 

• system accounting facilities 



The supporf software currenilyovailable 
tor use underUnlFiEX" Is extensive. 
A sampling of the programs available 
Includes 

• native C compiler (full 
Implementation) 

• native Pascal compiler 

• FORTRAN 77 ANSI Subset compiler 

• COBOL compiler with ISAM Hies, Report 
Writer A Sort/Merge 

• Extended BASIC Interpreter 

• Extended BASIC precompiler 

• text editing and processing sottwaie 

• enhanced printer spooler 

• variety of obsoluteond relocatable 
assemblers 

• debug and diagnostic packages 

Technical Systems Consultants. Inc, also 
offers a line of single user FLEX* 1 software 
products for 6800 and 6609 processors. 
For those hovfng an absolute need for a 
16 bit processor, UnlftW will be ovall- 
able through OEM licensing arrange- 
ments for the 68000 microprocessor. 
Please call or write for additional 
infoimatlon on individual products or 
OEM licensing arrangements. 

VH\X Ibo (fodemoKof Deli loboroloilet 
R£X" and UnlFlEX '" are irademoritsof technical 
Systemi Cansulfonri, inc 




technical /y/tenrv 
con/ultant/. inc. 



111 Providence Rood 

Chopel Hill. North Carolina 27514 

(919)493-1451 



66' Micro Journal 




Portions of the text for 66 MICRO KkftHAL was prepared 
using the following furnished hard/software. 

(WVTERS-HAflDW*^ 

Southwest Technical Products 

219 W. Rhapsody 

San Antonio, Texas 78216 

S09-5/8 DMF dlsk-C0SI-8212W-Sprlnt 3 Printer 

GIMIX Inc. 

1337 West 37th Place 

CMcago, IL 60609 

Super MeInframe-0S9-FLEX-Assorted Hardware 

EDITORS-tfXD PROCESSORS 

Technical Systems Consultants, Inc. 
Ill Providence Road 
Chapel Hill, NC 275! 4 
FLEX-Edi tor-Processor 

Great Plains Computer Company, Inc. 

PO Box 916 

Idaho Talis, 10 83401 

STYLD-MaH Merge 

Editorial Staff 

Don Williams Sr. Publisher 

Larry E. Williams Executive Editor 

Tom t* Williams Production Editor 

Robert (Bob) Nay Color Editor 

Administrative Staff 

Mary Robertson Office Manager 

Joyce Williams Accounting 

Carolyn Williams Subscr JptTons 

Penny WIN lams File Management 

Contributing Editors 

Ron Anderson 
N m Commo 
Peter Olbble 
Or. Theo Elbert 
William E. Fisher 
Or. E.M. Pass 

Special Technical Projects 

Clay Abrams K6AEP 
Tom Hunt 

CONTENTS 

Vol. V, Issue V MAY'B3 

FLEX USER NOTES 10 Anderson 

COLOR USER NOTES 12 Nay 

•C USER NOTES 16 Commo 

'C FLOATING POINT IB Battelnger 

Harkness 

0S9 USER NOTES 19 Dibble 

0S9 MAXIMUM EFFICIENCY 21 Burega 

MICR0WARE ANNUAL USER SEMINAR.. 2T 

STRUCTURED ASSEMBLE MACROS 25 Lee I ere 

SMALL/SIKf'LE EXEC-68KEC8-6B000. 34 Duclos 

REGULATOR PROBLEMS 38 Stark 

BIT BUCKET 38 A I I of us 

Editor's Note - Software copy.. 38 DMVI 

M00EM PROGRAM (another) 40 Burega 

TSC EDITOR MOO 42 Hughes 

PTR-3 REVIEW 43 Thomas 

HELP 45 

CLASSIFIEDS 45 

Advertisers Index 62 



MICRO 



JOURfM 



Send All Correspondence To: 

Computer Publishing Center 
66 HlOtt JOURNAL 

5900 Cassandra Smith 

PO Box 849 

Hlxson, TN 37343 

615 842-4600 

Copyrighted 1983 by Computer Publishing, lac. (CPI) 

68* Micro Journal is published 12 times a year by 

Computer Publishing Inc. Second Class Postage 

Paid ISSN 0194-5025 at Hlxson, Tenn. and 

additional entries. Postmaster: send Fonr 3579 to 

68 r Micro Journal, P0 Box 849, Hlxson. Tennessee. 

SIBSOUPTI0N RATES 

USA 

1-Year S24.50 2-Years $42.50 3-Years $64.50 

FOREIGN 

See Page 52 

Items Submitted for Pu Meat ion 

Articles submitted for publication should be 
accompanied by the authors full namm, address, date and 
telephone number. It Is preferred that articles be 
submitted on either 5 or 8 Inch diskette In TSC Editor 
format or STYLO format. AM diskettes will be returned. 

The following TSC Text Processor comrnands ONLY should 
be used (due to our proportional processor): .sp space, 
.pp paragraph, .fl fill and «nf no fill. Also please do 
not format within the text with multiple spaces. The 
rest we will enter at time of editing. 

STYLO commands are all acceptable except the ,pg page 
command, we print edited text files In contlnous text . 

All articles submitted on diskettes should be In TSC 
FLEX* format, either FLEX2 6800, or FLEX9 6809 any ver- 
sion. 

If articles are submitted on paper they should be on 
white 8X11 bond or better grade paper. No hand written 
articles (hand written or drawn art accepted). All 
paper submitted articles will be photo reproduced. 
This requires that they be typed or produced with a 
dark ribbon (no blue}, single spaced and type font no 
smaller than ♦elite 1 or 12 pitch. Typed text should be 
approximately 7 Inches wide (will be reduced to column 
width of 3 f/2 Inches). Please use a dark ribbon! 

All letters to the editor should also comply with the 
above and bear a signature. Letters of 'gripes' as well 
as 'praise 1 are solicited. We attempt to publish all 
letters to the editor verbatim, however, we reserve the 
right to reject any submission for lack of ♦good taste*. 
We reserve the right to define what constitutes 'good 
taste*. 

Advertising: Commercial advertisers please contact the 
68 Micro Journal advertising department for current 
rate sheet and requirements. 

Classified: All classified must be non-commercial. 
Maximum 20 words per classified ad. Those consisting of 
more than 20 words should be figured at .35 cents per 
word, 20 words or less 17.50 minimum, one time, paid In 
advance. No classified ads accepted by telephone. 

68' Micro Journal 



Intelligent Serial I/O Processor Board Now Available 

The GIMIX Intelligent Three-port RS-232C Serial I/O Interface can significantly increase 
throughput of a multi-user system by reducing the number of interrupts between user 
terminals and the host CPU. The Intelligent I/O Board accomplishes this by buffering data 
transfers between system and users and preprocessing of the data. 

Appropriate on-board software and operating system drivers are required. Software and 
drivers for OS-9 Level 2 will be available shortly from GlMlX. 

• INDEPENDENT ON-BOARD 2MHZ 68B09 CPU 

^ UP TO 20K OF ON-BOARD MEMORY (EPROM and RAM) 

• BUFFERED DATA TRANSFER BETWEEN HOST AND ONBOARD 
CPU USING A Z8038 FIO I/O INTERFACE UNIT 

^ THREE RS-232C SERIAL I/O PORTS (6551 As) WITH SOFTWARE 
SELECTABLE BAUD RATES, WORD LENGTH, STOP BITS, PARITY 

Standard Version Including 4K RAM (Without Software) $438.11 

— PARALLEL VERSION COMING SOON — 

Uniflex For GIMIX Winchester Systems 

TSC will be providing UniFLEX compatible with GIMIX Winchester systems. The NEW 
versions of UniFLEX for use with the Winchester systems will be delivered on 5 M media as well 
as 8" media. 

GIMIX 30 Pin Prototyping Board Now Available 

• Double sided with plated thru holes and gridded power and ground lines. 

• 8 rows of pads on .100 x .300 centers; up to 41 fourteen pin ICs. 

• Accepts standard 6, 8, 14, 16, 20, 24, and 40 pin DIP devices. 

• The entire top edge has pads for .100 x .100 header (ribbon) connectors. 

• Pads for solder connections or .100 center headers on all 30 bus lines. 

• Accepts 3 TO-220 regulators, 1 on the +8V & 1 ea. on the +/- 16V lines. 

• Provisions for decoupling caps distributed throughout the array. 

• Can be used with wire wrap, wiring pencil, solder wiring, etc. 

With gold bus connectors and heat sinks (unassembled) $38.33 

Now Available From GIMIX 

(U.S. & Canada Only) 

THE WINDRUSH EPROM PROGRAMMER 

• Probably the most versatile EPROM PROGRAMMER available. Interface & software for 
EXORcisor - II (fully addressable) and S50 bus systems. 

• PROGRAMS AND VERIFIES 2508/2708, 2516/2716 (SINGLE AND TRIVOLT TYPES) 
2532, 2732 t 2732A, 2564, 2764 and the 128K TMS2528 (16K x 8) 

WITHOUT ADDITIONAL PERSONALITY' MODULES -. 

• PROGRAMMER extends out to your work area via 5' of twisted pair cable. 

• EXTENSIVE COMMANDS MENU . . . MOVE DATE, READ, PROGRAM, VERIFY EPROMS, 
EXAMINE/CHANGE BUFFER, FORMATTED DUMP OF BUFFER, FILL BUFFER. 

• Fully documented user's manual w/schematics & theory of operation. Professionally 
finished PCBs w/solder resist & component overlay. 

• SOFTWARE AVAILABLE FOR FLEX 2/9, SSB, OS-9 (LVL 1 NOW, LVL 2 LATER) 
and MDOS...AII source files supplied. Specify disk size please! 

NOTE: One version is supplied FREE. Extra versions: $25.00 each. 

S-30 Interface/Programmer/Baseplate/Cable $375.00 

EXORcisor Interface/Programmer/Baseplate/Cable $395.00 

Ci Mix inc resents rr* riq*i * c^nge pncmQ and Product m7 ia/cct i7tk di apc ^^^^m M ^^h^^ m ^k. ^ 

vm**B**m*«m*m*m«immM 1337 WEST37th PLACE ji»lMIX# 

CHICAGO. ILLINOIS 60609 ■ _JI|T| ^K flC 

GiMll* andGHOST' jr« repsier* trademarks Of GlMtl <nc -. Q9 _ ^^31 I 1 III .J^k. 

FUft s«o until* are trademark or Tecfwcai Systems Consultants inc ^ ' ** y * ' "^ ' U ^^^^H II I II ^W ^^ 

0S9 rs a trademark ot Mtroware inc TWX 9 10-22 1-4055 igtf GlMlX inc 

68' Mlc/o Journal j 











*****>* 

**«.> 






' °1«A «*•*, "Vfc 






****** 



OS-9 Seminar August 12, 13, 14, 15 



* l w Mtcrowofw Syttnn Corporation 



*js See Page 20 for Details 



'66' Micro Journal 






"\ 




* ^u^^ * 



32 PAGE CATALOG 

FEATURING SOFTWARE 
FOR SS-50 and 6809 

BASED SYSTEMS! 



CALL TO RECEIVE YOURS TODAY 



(315)474-7856 




FRANK 
HOGC 

_ _ ^^^BORATORY 

THE REGENCY TOWER ■ SUITE 2 1 5 ■ 770 JAMES ST • SYRACUSE, NY 13203 
PHONEI3 13H74-7B5© • TELEX 646740 

^ J 



68* Micro Joumai 



ANNOUNCING 



ElectroScreen™ 



\LaiJ, 



onW„ 

$595 



the Superior Alternative T „, r , 

to the Traditional Alphanumeric Terminals 




The ElectroScreen - Intelligent Graphics Board Features: 



Graphics 

• 512 x 480 resolution bit-mapped display 

• Interleaved memory access — fast snow-tree updates 

Intelligence 

• 6809 on-board mpu 

• 6K on-board firmware 

• STD syntax high level graphics command set 

• Removes host graphics software burden 

• Flexible texl and graphics integration 

• Multiple character sizes 

• User programs can be run on-board 



Terminal 

• Terminal emulation on power-up 

• 83 characters by 48 lines display 

• Easy switching among user-defined character sets 

• Fast hardware scrolling 

Additional Features 

• SS-50C and SS-64 compatible board 

• Goard communicates with host through parallel latches 

• Composite and TTL level video output 

• 8 channel 8 bft A/D converter 

• Goard occupies 4 address bytes 



See your dealer today! 
The ElectroScreen manual is available for $10. credited toward purchase of the board. 



The ElectroScreen has a 90 day 
warranty from purchase dale 

Dealers, please contact us for our 
special introductoiy package. 



mJMPrivacInc 

MEOBUBM 371 1 S George Mason Dr F 



(703)671-3900 

Falls Church. Va 22041 



68* Micro Journal 



THE CHIEFTAIN " 5/4-INCH WINCHESTER 
HARD DISK COMPUTER 



SO ADVANCED IN SO MANY WAYS . . . 
AND SO COST-EFFECTIVE . . . 
IT OBSOLETES MOST OTHER SYSTEMS 
AVAILABLE TODAY AT ANY PRICE. 




• HARD DISK SYSTEM CAPACITV 

Ihe Chieftain series Includes 5'/* and 6-inch 
Winchesters that range from 4 to 60 
megabyte capacity and higher as technology 
advances All hard disk Chieftains include 
64-k memoiy with two serial ports and 
D0S6SJ* disk operating system. 

• LIGHTNING ACCESS TIME 

Average access time for 5'Vinch Winchesters 
is 70 msec comparable to far more costly 
hard dish systems, Hut means data transfer 
tenlime* faster than floppy disk systems. 



Write or call today 
for details (including the 
remarkably low prices) 
on the total Chieftain 
Series . . . and on 
dealership opportunities. 




• 2-MJ1Z OPERATION 

AU Chieftains operate at 2-MHz. regardless 
of disk storage type or op rating system 
used. Compare this to other hard disk 
systems, ivo matter how much they cost! 

• DMA DATA TRANSFER 

DMA data transfer lo-anoMrom tape and dJsk 
is provided for optimum speed, A special 
design technique eliminates the necessity 
of halting the processor to wait for data 
which normally transfers at a slower speed 
detennlned by the rotational velocity of 
the disk. 

• RUNS UNDER DOS OR OS-9 

Mo matter which Chieftain you select . . , 
5^ or 8 inch floppy, or 5H- or 8 inch 



Winchester with tape or floppy back up . . , 
they aJJ run under 005 or OS 9 with 
no need to modify hardware or software. 

• UNBOUNDED ELEXIBIU1Y 

You'll piobably never use it, but any Chieftain 
hard disk system can drive up to 20 other 
Winchesters, and four tape drives, with a 
single DMA interface board I 

• SMOKE SIGNALS HERITAGE OF 
EXCELLENCE 

Tills new<jencTaticm computer is accompa 
nled by the seme LnduranceCertifled 
quality Dealers and end users all over the 
world have come to expect from Smoke 
Signal. And support, software selection and 
extremely competitive pricing are very much 
a part of that enviable reputation. 



20- Megabyte Tape Streamer Back- Up Option 



Available with all Chieftain bard disk configurations. Triis cartridge tape capability 
provides full 20 megabyte dish backup in les*> than five minutes with just one 
command, or copy command for individual tile transfers, Transfers data tape to- 
disk or dish to tape, floppy h.n K up is ( -||so available in a variety of configurations, 



The Chieftain Computer Systems: 



Mere are the Chieftain 6809-based hard disk computers that are destined to 
change the data processing industry . . . 

□ CHIEFTAIN 95W4 
4 megabyte Stt inch Winchester with 
a 360-k floppy dish drive I pictured). 



□ 



CHIEFTAIN 95XW4 

4 megabyte. S^lncn Winchester with 
a 730-k ooto-densHy floppy dish drive. 



□ 
□ 



CHIEFTAIN 98WI5 

15 megabyte. 5' 1 inch Winchester *ilh 
a i mcga&yte 6-inch floppy dish drive, 

CHIEfTAin 9WI5T20 

15 m^93byie S&viflrh Winchester with 
a 20 megabyte tape streamer. 



Name 



SMOKE SIGNAL BROADCASTING® 

31336 VIA COLINAS 
WESTLAKE VILLAGE, CA 91362 
TEL (213) 889-9340 



I 
I 

I Company 

I 
i 
i 
i 

| Telephone ( 



Address .. 



City. 



. State - 



.Zip 



68' Micro Journal 



ELEKTRA Means Quality 



ELEKTRA CABINET Made Of heavyweight 080" thick ilurnmum Interior 14 1*-1 12" 
wide by 2 I ■ F'fl d«p by 6-3'4 high Heavy duly A C hne cord A C fuse holder EMI 
filter Fan with filter Back pane* naa 10 cutouts Uk D type dale connect on Front panel 
(U» key on'oll power switch J illuminated push button iwilctars {Reset end 
NMI/Aboitp, irm two u toots for 5-i'4 disk drives $25000 

Flee* F^Uto f^ 6- 1/4" drive opening StOOO fan Filler $1000 

POWER SUPPLY hkgneVguahly linear power supply CONSERVATIVELY rued *i t£s 

; -, Ain i6* Ji(tt i6v 3 primary inputs lo* light tiled end heavy toid-no 
2?0y Version $20000 H0v Version §17500 

DISK R EQULATOa BO AMD WITH CABLE* Standard version to* 2 floppy dmes *M 00 
Heavy duly veriion for i Wmcn«w dnve and t floppy drive. 175 00 

ELEXTflA UNIVERSAL MOT HER BO ADD Heavy wetghi 125" truck W tong by tj" 
wrde 1 1 memory (50 pmi not* * or 8 slots may be cut off tor t hoMer wng to u or 10" 
kswgtrts respectively »l'Ol» pm) slot* C iPHj tiJ iB^ flB^g or I/O stole 
Cno<a of «. a. or IB hid'MMi par I O Hoi Beee ■»■ lor I/O HOH sen be placed * 
30. 64 of 126 byte increment* respechveiv l spacing between en memory arid 1*0 
Hot* Extended mdreeung cjipatmny f w both memory and I/O porta for evjessng 8B- 
50C bid epecmcafhons On board baud rale generator with low end ragn rarvgea 
ptO¥KMng lumper seieclabJt met of ?5 through 36 400 lor each of trie five baud rite 
■■nee SlOW device Circuitry permuting 1 UH; 30 pin disk controllers lo fun with? MHt 50 
pm CPU boardi Bar aboard w/docu mentation |B0 00 

Krt w/gord connector* $320 00 Assembled w/goio connectors $300 00 

Kit wAsn CPnnec tore $240 00 AaaemHed w/tin connecton $30000 

ELEKTRA CHASSIS Includes cabinet. HOv Power supply, power suPPly eblea 
standard dim regulator Ooerd with power cables, motherboard with goid «quare pin 
connect e luembfed end tested 1050 00 

ELECTA A CPU ft Use art her the 6002 or WO* (to run B800 son ware) o* B809 Haa 
p#ora«>n tor up to 327 1 6 e«*bms, 1 K scratchpad MCBMO tnP*« twne*. and an optonei 
peud rite oeneielar providing baud rate* from liO itvough 38.400 baud m iwo user 
seise* able ungn The board supports OMA by either HALT oi 
CPU it used The 



The board suPP©«tsOMA by either HALT orBUSREO when • 6808 
board *iii am an r> tre Mhc&ljG'* compeiibte mone y s m m* 
6802 6008 mode end SBUGE HUUBliO and MICROSUG m ihe 6809 mode Versaon* 
of OS-o™ Level * are available 

Bareboerd (5000 Krr 122SO0 Assembled 127500 

2RB900 HUMBUG MOOD 2K6A09 MICRO BUG $3000 See 4K HUMBUGS next page 
Option*) Baud Ra *a Gene* rlw $2500 

ELEKTRA DPS OUAL PORT SERIAL CAR0 Fits the iiandard 30 pm S SSOtx rt I/O Hoi 
Can he ponbgurad lor 4 addresses per port •** iheBpo* ?e*P*eaeea m irten the A 
• edoreeeae per port with me B port a id dn aeei »V<ei ONanihe 4 pon Eecft 



port o< tor it edOreeeaa per port 
port w ler mtneied at t« 
other for lermrval or 



pon w ler mMieied at two 18 p»n op eocieti one loziel configured lor modem and * 
RTS CTS OIR OCO and DTP are epproprnieif 



■mpiemeriied Eich port hn independent eeieclion ot baud rale Each port eJlowi the 
internal r«|uwtt to be independenUy jumpered to Ihe iROor FlRQ/NMI hu» line 
Bareboard $2000 Km $0000 Assembled $0000 

Cebiee a eo needed per boerdr Each $2000 

ELEKTRA DTP OUAL POUT PAR ALLEL CARD Frtt Ihe standard 30 pm 5S.50 bus I/O 
slot Cm* be used m e»\r*ef the 4 or 16 e dd re s ses per |/0 elol oonhguration occupying 
lhetnsi tour eddr ess es of the UO tKM The dxecfion of the ttl puffers can becontrohed 
oy niher on ooard ptnpt connwefors or by e signet worn theparvphessis The interrupt 
tegueeih tor each port may be individually pumper ed to en her tfwmOor FIRO/WMI 

aarebojfd $2000 Kit $60 00 Assembled $80 00 

Cable* (two needed per board) Each $20 00 
ELEKTRA 0*5 Oust drive c binel lor 5-1/4" drives wilh po er supply 

hn« cord, Ium power twitch, and po*er cable to drives 125 00 

ELEKTRA HO-S tHii^y duty version o* 0-5 pachlge sbovtj ISO 00 

ELEKTRA $HD-1 (Super heavy duty Powers i Winchester mn t Hoppy) 175 00 

5 nbbon cable tor dual b 1/4 disk drives 40 00 

ELEKTRA OS Dual dnve cabinet, power supply pe cable lor tr drive* 3S0 00 

6" nbbon cable tor dual r d tfc dr«ei 45 00 

GOLD 10 PIN CONNECT OPS tSpeCily male w, squire pm* or female i 1 50 

TtM 10 PIN CONNECTOHS tSpec>t v mi4 w tquve pint or i*mai*> 50 

Prices ind in*enlory ire tubjecl to change wiihout advance notice 
Thu ad H our cat nog 

WARNING AAA Chicago Computer Center doei not provide repair or diagnostic 
servkca lor cuitomer assembled hits AAA Chicago Computet Center does warranty 
snd ma intiin >i>p \t ic; d for «u r a*i*m bled hair di T he cust omer b hou Id c J re lu 1 1 y take into 
coniideralion the small dttlerenttn sepiriting our tut and assembled prices when 
making hit choice of purchase 

We have i ntr oduced ou f tins ot to m pgier equipment wit h the purpose ol offer mg | he 
highest quality o> component* possible et affordable prices fhewe ptpducl* sre 
intended for OEM appitcitions #hete it n the responsibility ol the purchaser to 
intagrite these components with suitable memory disk coniroHers. dVrves. end 
soh w« if Hong with I O terminer* to form working computer systems 

AAA CHICAGO COMPUTER CENTER 

120 CHESTNUT LANE • WHEELING "L 60000 

OT2| 45»-0450 

Technical const: Its Hon avwtsbie 4 PM lo 6 PM most weeKdiy* Closed evenings and 

weekwndt 

TERMS Minimum order $?Q 00 Shipping and hindimg estimates within the Continental 
u S add 3S IMIN IMUM %2 50) Illinois residents add 6% sale* Ian We will refund your 
overestimated shipping and handling charges Foreign shipping and hmdfmg. add 10% 
4 MINIMUM 1 10 OOl F o reign or den must be pr epa id m U S dollars Heavy foreign Hems 
wilt be shipped air ir eight cot reel Please phone between 4 PM and 6 PM weekdays if 
quetttont arise regarding shipping toes Master Charge. Visa, snd American Express 



Ovesvetpvt ••» sr* not lUflMioe 
phone tor tocre>c4t heap eurmg ihe hours nr*. tei above Tne too bfejvent dhai aj et g 
of our inventory end prrces makes it unecianomtcai to publish ■ catalog Our ads sre 
m te noed to serve thai purpose Pnees snd inventory ire suOrect to entrvge without 
sdvanee not we 

10/00 OOK Diim I head ? heeds 

30 day guarantee COC COC 

Vi'4 7 . lOlrecM 22500 29900 

5-1/4 . 80 iracss N/A 375 00 
Service Manual (Specify 40 or BO track I 
r. 77 tracks OS '00 Ourna 
Service Manual 4Qume OT-flp 



t head 


Hippy 


2 head* 


2 heads 


MPI 


Siemens 


MPI 


(JtJMI 


250 X 


260 00 


325 00 


350 00 


325 00 


335 00 


42500 


450 X 






2000 


3500 

525 00 

40 00 



Plektra 

COMPUTER PRODUCTS 




SMOOTH Software 



(AJI ol our sonwere is copyr«ghted snd sit nghis ire reserved Source ts either supptwd 

or oplionaliy availsble at exificosi sot hal the purchaser can modify our programs for 

his Own use Licensing newer** ts required for commercial resale) 

SUPER MO EM PROGRA 

Smgie characier command for simplicity 

Hsrdwars independent (No interrupts required) Assumes modem ts connect loan 

MCBASfl (serial mterlece) and the control terminal *s nnected to an MC6860 <or 

MCB820 vmen used wilh the vHieo version ol GMX uG ta l 

Transmr msnuslfy to ditlani computei 

Transmit disk tiles (le«1) ol any tsngtn lo distant compiitei 

Ftecei ve Mna save disk fries < lexi) of any tongt h on local d is* system H sanding co mputer 

does not support *n Jt-on/x-otl protocol, then the received fifes sre hm led in sue by t he 

computer memory 

Tested tor lufl duple* operation at speeds up to 0600 baud (CRT lerrmnu must be 
capable of operating et a baud rate higher ihen ihe one the modem ts operated at ) 
HaJf duPto* option m case distant compuier doean t echo 

Echo option so user csn sumutite a hme the ring syslem < Super Modem Progrsm 
doesn I suppon auto- answer bui the source is provided tor those individuals who wtsh 
lo adapt our program lo their ipeoel needs ) 

PepLaees CR wiihCR/LF (user option} for those using time sharing sysiems I hal don 1 
trinsmrt LF's 

Show disk Metransmit bstedon ensractar verdicetion (plus user mstai led timing oops J 
neeessary) for use on time Bin ring systems lo which di*k files cennoi be seniai speeds 
suggested by ihe baud rale 

Please specify 6800 or OoOO, 5SB or FLEX 1 - 5 or 6" 

Menuel and ots* wiin both source and object code $7500 

STANDARO MODEM PROGRA 

Same as Super Modem Progrem above but without ECHO option CR4.F torCRopbon 
stow disk lito irsnsnvl option, nor X-on/x-of f option Receptcm of d sk files n limned to 
those smal enough so svmp*e*«ty id within the receiving butler 
PVwae oec.ty 6B« or 66091 SSB or FLEX' 5 ore- 
Manual with instructions source listing and ftow chan n diss with 
both source and object code $45 00 

Manual wilh instructions source lisiing. and (low chart , ?5 00 



MOOEM8 <Rv US. Robotfce) 

Auto-O«et rs Hayes competifSe 
9uV 1200 Baud, direct corvres.1 
1200 Baud (in coal, oirwct convex 
300 Baud 130 cpt) o^cl curvwd 
300 Baud {30 cpsl. acoustic 



MANUAL AUTO AUTO-ANS 

ANSWER ANSWER AUTO-OlAL 

hi A 44» 00 400 00 

J4» 00 380 00 N/A 

140 00 ITS 00 N/A 

tlSOO N/A *i/A 



THESE ADS ARE OUR CATALOG 



68' MrCfO Journal 



GIMIX CLEARANCE SALE ALL 6IMIX ITEMS MUST GO! 



'■ 



All new GIMIX item s 20% eft list prices whttesuppty lasts { See our ad in the April issue 
ol r a MICRO JOURNAL f r Hal pricing) Some items n\ey be drop snipped by other 
tofttmt GiMix daaiera 



Tne following used item* are in perfect working condition 

32K GiMiX memory boards $175 00. GIMIX 6800 CPU boards H?5 00. GlMix chassis 
Irom $450 00 lo 150000. GIMIX 64 X 16 vKJoo boards SlOOOO, GIMIX 60 X 24 video 
boarda w»ih cha racier generators 1260 00 



SMOOTH"' Software 

ALL IN ONE 

Editor . Tent Pr eaaor . Mailing Leber* 

Maying Ltsit - Use any CRT lermwiai and printer 

ftypffcOrte Editing commend* such at bottom, change. oeteie tmd. inser f (single (>n#^ 

mpul (multiple fines). list neat, owe* lay (with cursor edging, character deletion and 

insertion), ovcrstn*e (tor selected da*- kef tentj , print, restart set lop. under hne, up, and 

verily 

Support! Tesl Processing oommende such as block copy, block m e. centering 

m rgm Jgali'icallon (widen end narr w), dgrng. end tebbing 

Mailing Uat* end labels. Use the seme m Img u*l du* Tile (win protected ereee) lor 

bolh ma ling labels sod repeal tellers flepe t letters are personally adress lo each 

person or selected persons on Ihe mailing list 

Host PowtrlutFOe Handier found in any editor Append one tiielolheend of another or 

insert Imager on? file into another aa designated by the line pointer Pnni specified 

tinea io your printer or io a dish tile Edit fees targe* men the tail butter Does not 

produce output riles when not desired Delete drsfc tiles rrom the editor 

Printer commands, Control characters can be sanl to Hie printer tor lorm i control 

either direclty from the eonlrol terminal or by imoeddlng them in the lex 1 The set 

command ooniains inierf aee I miia* nation and cher cier output routines I o support ihe 

SWTPC MP-C Inieriace em well a* the standard serial and parallel interfaces Jumps are 

also provided ro user suppi led Prtnier routines User selects the port address (0 thru ?, A 

or 6 ) thereby elJ mmating the need k)r the u set to install printer soi t ware routines Editor 

can be miltelued for either 4 or \6 addresses per port 

Editor allows exiting lo either ihe monitor or DOS and men reenter (WarmSlertl without 

destroying previously prepared lexl in ihe hulfer The ttesiB'1 command er es 

contents i n ihe buffer without ihe user hev nO to reload the Editor 

Tne Editor allows the user to toggle between full dupta* (n echo) and alf duplex 

(echo) aa needed a responds io commands in boin upper and I wer case nd can be 

used to create assembler source code end Basic Programs as well as texi 

75 00 
35 00 
250 00 



Soee»iy 6600 or 6609. SSB or FLEX- . S v of r 
Printed source asirnn is eve«leb*e lor an additional 
AiMrvOne Write n Spell ">d Spelt n fn package 
Software by Technical Systems Consultants, tne. 

OOS {includes Editor and Assembler) 

Editor or Assembler 

66000 Cross Assembler on 6809 

6609 Cross Assembler on 6800 or 6600 FLEX* Llhlihes 

Text Processor or Sorty Merge Package or 6809 F LEX * utilities 

Extended Basic 

Basic Precompiler Ispeciiy standard or extended) 

Pascal 

OeOuo Peerage o» OiagnosHc Package 

6BO» Relocating Aaaerobter 6 kintmg Loader 

Fortran {Require* Relocating Assemble* 6 Linking loader) 

Fortran fWUh Relocating Assembler a Ltnsmg Loader! 

Octal 

laftwere bv Micron* ere fstia-Tlme 

Systtma Cora. f acaege 

OS^"" Level On* Operetmg Syalem 

OS- *" Level Two Operating System 

BASIC09- 100 00 

OS-9 1- Macro Te»l Editor 

05^9* interactrvo Aaa mblar 

OS-** Interactive Debugger (Onk version) 

CIS Coool Compiler COO 00 

Puctl Compiler 100 00 



OorJata 

7500 
7500 
7500 



5000 
10000 



UnlFlEX*- 

w/1 yr mnl 

550 00 

300 00 

15000 
200 00 
15000 
300 00 
7500 
»75 0O 
35000 
450 00 
750 j00 

Source Maauai 



Microwate yearly support service | $200 00 lw 05-9 Level 2) 



ago 00 

M/A 

N/A 

300 00 

300 00 

100.00 

WA 

M/A 



Oafs 

40.00 
4000 
2500 
1500 
1000 
1000 
6000 
40 00 



FLEX- 
ISO 00 

50 00 
250 00 
100 00 

7500 
10000 

50 00 
200 00 

7500 
150 00 
275 00 
375 00 
500 00 
Delect 
w/tUB. 
200 OO 
500 00 
200 00 

125 00 

50 00 

900 00 

400 00 

7500 



SPECIALS 

* New Telemdeo 280A. 4Mm WK computer system win 950 compatible 
tHiin-in terminal, dual 5-1/4'" I loppy drives It Mbyte capacity 

loralLCP/M 3295 00 

* Same but with one floppy and one 1 0Mbyte Winchester 5495 00 
" Six uaer versions available C It 

* Modems {Up 10 $10000 of' tist| See out ad on ihe previous page 

' SWTPC MP 096. sockeied win baud rate generator (only t Ml} I7S.Q0 

* SWTPC MP-A2, socketed an with crystal clock i MH/ [only 4 left i H500 
" SSB BFO Floppy frsfc Controller i (Version SI 175 00 

* MlCROBUG I2K 6609 Baby HUMBUG by Peter Slarkl 3000 
' Cat 300 Baud Accoushc Modem tonty i left) 9900 
' SWTPC 4K Memory JTS 00 ftK Memory $40 00 MP-C HO 00 

" SWTPC Chassis PS MB combos (some with modified PS; $50 00 thru 125 00 

* High speed lape reader S7&Q0 ' SWTPC PR -40 Printer 76,00 

1 Percom 50 pin prototyping OoarO $30 00 " 30 pin proto tJOftid (20 00 

* Used MPI B5i and Stamens 5*1 '4" floppy dnves 12500 

Spedal So 11 warn 

MtCROBUG <2K. 6609 Baby HUMBUG by Pater StaiK 
4K 6609 HUMBUG 

4K 6800 HUMBUG (BAM needed el SA0O0 er>4 $0000) 
2K 6800 HUMBUG (With caiielte LOAD end PUNCH} 
2K 6800 HUMBUG (Extra eommands male d ol casaeiie soilware) 
Other HUMBUG versions includmg video ve< ions are available 
Spell n Fu by Peier Stark 
Write n Speti by Peter Stark 
AH In-One, Spell n Ft* and Write n Spell package 
Oyn mtie Disassembler 

Dynamiie - (Updale Send original diskette plus $40 00j 
SUPCR SLEUTH OisassemMer System i$t01 00 lor OS 9 version} 

SWTPC 

6609 SWTPC FLEX- Disk arid manual (Disk only 15 00) 

DC~4 Disk Controller (SS/DS, SD/OO, 5-1/4'' 

S32 Universal Sl*'^ Memory Board (wrlnoui rnamory c*npmj 

SBUG E t27l6 compatible) 25 00 MPR 2716 tpro^ Programmer 

MP'S2 Ouaj Port Serial 120 00 MP-L2 Ouel Port Paiallal 

MP-N Calculator Board {kit) 54 96 MP N (essembl } 

MPT Interrupt Timer 92 00 MP-09 2MH/ 6809 CPU Board 

Smoke Signal B oadcaaimg 

0CB-4A Ooubie Densiiy Controller Board foi 5" and 8 with DOS 

SSB OOS i Sp«:.i v 6600 or 6609 BFO or 0CB-4A. 5" or V) 

St 92 SA92 h (6809 Edrt/AS$m for OOSj 

SSB Monitor (Specify 6800/6609, $8008 %E0CA %f7EB\ 

SSB version ol FLEx* iwithout Ednlor snd Assembler) 

LMBtA Moiner board 

SCB-69 6809 CPU Bo rd 

PAR- 1 Ouai Port Parallel Board 

SER-2 Duel Pori Serial Board wrin 2 Cables 

Chief 90 64K Computer System 

Chief 8524 64K Computer System with OS DT-OD 5" FO 

Slahc Memory Boards M-I6X t9500 M-24-X 295 00 M-32-X 

Oynamrc Memory Bo tds M 126 X 99500 M -2 56- X 1295 00 M-512-X 

SMOOTH and ELEKTRA are irademerks of AAA Chicago Compiler Center 
FLEX and UhlFLEX ere Irademerks ol Technical Systems Consultants. Inc 
Ol-l and lAflCOa at^ trademarks of M< row ere Systems Corp 
QIMEI erd QHOf T are registered tradema/ks of liiMi* inc 
CP/aJ *a a regiatered Irademark ol Oigital Research Inc 
280A ra e regiatered tredemerk of Z»«g Inc 



3000 
7500 
6500 
40 00 
40 00 

178 56 
75 It 

250 00 
6000 

100.00 
99 00 



3500 
23000 
124 50 
11450 
120 00 

9200 
29500 



549 00 

75.00 

69 95 

7500 

t5OO0 

399 00 

399 00 

B9 00 

129 00 

219500 

4325 00 

39500 

1695 00 



THE BEST 30 PIN FLOPPY DISK CONTROLLER THAT 
YOU CAN BUY! — THE ELEKTRA SFC 



Cont'd is up to lour 5 V4" drives end four 6 drives tor a lot at of eight system drives lor 
bolfi 6S00 and 6609 systems {F LEX software has a built m limrl of a system mix of four 
drives) improved programmed mpul/ output i.PIO| interlace thai allows singhe and 
double density 5 inch operation at IMHj in both 6600 and 6609 systems Allows single 
density 8 inch opei a I H>n at 1 M Hi m both 6800 and 6609 syslem s Allows but h s i n gh* an cj 
double density operation o" both h inch and 8 men drives at ?MHj in both 6600 and 6609 
systems without slow device circuitry Hardware and soilware compatible wuhevtsimg 
SWTPC DC-T. OC-2. AMD DC 3 type controllers Controls virlualty any Ttoppy disk 
dnve. any mi* of drive si^e recording density track density number ol sides motor 
control, with or without head load solenoids, including ihe new 2 Mbyle5 mch drives 
Analog phase locked loop dale separaio/s for mam mum reliability Provide* separate 
adjustment* lor S inch and 6 inch drives Analog wnie precompertsehon circuit *iin 
separate ad|uslmenls lor & inch and inch drives Designed lo meet Ihe data hold 
requirements ol Western Dig Hal floppy disk controller IC Schmhffl trigger hysteresis 



mpul butters tor disk drive signals Software wnie protect control interrupt Data 
Hequesi enable control 12 option lumper areas to select juii the right combination ol 
hardware teaiures to match your drives and software Provides many separate option 
setecltone to* 5*nch and 6 inch anve operation Gold bus and drive cable connectors 
tear corvrwcior for eaar setup and field service Singhe b vol I power supply 4 or 16 
addresses per slot decoding ideal replacement for cutting com rollers lo add double 
density data storage and 6 inch drive capability Disk driver software and disk 
formatting utilities available to extend the capabilities ol your urreni software Qel 
more for Tees with the El.EKTRA Super Floppy Controller 



ELEKTRA SFC Super Floppy Controller lessemOfed and tested} 

Otak witn dn era and form lling utilities 

EPflOM «»rih driver overleys 

TSC General FLEX or FLEX 9 both with Edrfor end Assembler 



$250 00 
$30 00 
430 00 

$15000 



THE BEST WINCHESTER DISK SYSTEM THAT YOU 
CAN BUY! — THE ELEKTRA WINCHESTER 



Has automatic error detection and CORRECTION ol up to 11 bit burst errors 
SS-50 bus. extended addressing cepeb lilies OMA. on board actor buffer, operates 
with 6600 and 6606 type proaasaoss. drrters ««c»uded lor FLEJt 9o» OS-9 Drivers re* 
FLEX 2 tasoOl available for »n addhionai |100 00 Pftce includes host intertece. 
ntroOer. drivels}, and cables 



Si 995 00 

$?995 00 
5499500 
ELEKfRA heavy duty regulator bd i powers 1 floppy and 1 Wmchester) (75 00 

ELEKTRA SHD-S cabinet, ps. os cables (powers 1 I loppy and i vVinchesleri $175 00 



7 b Megabyte ELEKTRA single drrve Winchester system 
15 Megabyte ELEKTRA dual drive Winchesler system 
19 Megabyte ELEKTRA smgle drive Winchester syslem 
36 Megabyte ELEKTRA dual drive Winchester syslem 
LEKTRA 



AAA Chicago COmpulf C>HltK See our ma on the previous page to your left lor oroennrj instructions 



Technical Consultation available 4 p.m. to 6 p.m. most weekdays. 

Closed evenings and weekends. 



'6fcV Micro Journal 



Flex User Notes 



Ronald W. Anderson 
3540 Stur bridge Court 
Ann Arbor, Hi 48105 



Clarifications 
A few months ago I did a review of Wlndrush PL9 
compiler, and mad© a remark {jokingly, I thought) about 
them using the algorithms I published In the November 
1980 '68* filcro Journal, but not giving me credit for 
them. Wlndrush wrote me and asked me to look ot that 
Issue of *68' and tell them how they could have known that 
the algorithms were mine* I did dig out that Issue and 
look, and I found out what the problem was. The 
algorithms were discussed In detail In my column In the 
previous (October 1980) Issue, but there wasnH room for 
the listings. Don Williams added a little note that they 
would be published "next month". In the November Issue, 
they were added to the end of my column, but there was 
no reference to them whatever anywhere In the text of 
that month's column, (not even a little Itere ore the 
listings that wouldn't fit last month." note). I must 
therefore agree with the folks ot Wlndrush that the 
authorship of the scientific functions was not clear ot 
all. They have added a credit to their listings, and we 
ore all happy* If my remark caused anyone to think that 
1 was Implying that Wlndrush had done anything wrong by 
using those functions, I'm sorry. 

Editor's Note; We here at 68 MICRO JOURNAL regret that 
this occurred (our ommlsslon). WltORIfSH Is a company 
that has dealt most fairly with our readers and we 
appreciate their fair ano honest policies- We have 
never received a complaint concerning their products or 
customer satisfaction! Should any advertiser desire to 
'quote' from 68 MICRO JOURNAL, a simple letter will 
normally get favorable results. So If you desire to 
reprint or use something from 68 MICRO JOURNAL, a simple 
letter will normally get approval. We do want to know; 
vet. we might also miss a •credit'. If so, we want to know 
Thaf also- 



Along that line, arry listings published In this column 
ore understood to be public oomefn. 1 hadn't really 
thought much about anyone using them for commercial 

fur poses before, but that doesn't charge anything, 
hey ore still for anyone to use who wants fo use them. 
I do appreciate users Including a credit line for the 
source. 

While on the subject of Wlndrush, let me say that I 
Uave had continuing correspondence wfth them regarding 
PL9 • They have won my all time award for thorough 
answers to my questions, criticism, and suggestions for 
enhancements. Some folks have sent me software for 
testing and review, and then all but Ignored any 
correspondence about tUot software from me. The folks 
ot Wlndrush ore definitely not In that category, in 
response to my questions, they have fixed two "Dags and 
made several clarifications to their manual, which was 
pretfy good In the first place as software manuals go. 

Since writing the review update, I have had a chance 
to use PL9 In the latest version, rather extensively. 
I've translated some non-trlvlal programs from Pascal, 
which Is a rather easy exercise, and found PL9 to be 
more code efficient than the best Pascal compiler that I 
have. Some of this Is due to being able to edit some of 
the library functions and only Include what Is needed for 
a given program. What Is more Impressive Is the single 
step and very rapid compile operation* When I am done 
with a PL9 program, 1 have the library files, of course, 
but onhf two files that ore specific for a given program, 
the original source file and The binary file. Compilation 
was VErtr fast, and If the compiler catches errors, It Is 
easily put In the co-resident editor mode so a 
correction may be made quickly and the file re compiled 
without aborting the compiler — loading the editor — 
editing the file — exiting the editor — and re-loadlng 
the compiler. 

Contribution Records 

UDRI sent me their DBM for the Color Computer, and 
their Contributions Package (the totter ot my request). 
Last year, I kept the records for my church's 
contributions, and prepared statements for tox 
purposes for all contributors. At the time, 1 wrote my 
own software in BASIC, and though it worked, there were 



several Inconveniences in It that 1 would change if I used 
it again. Since 1 now have the UDRI package, I am going 
to use It this year, and I've promised UDRI a review after 
I've used It for a while so that 1 on familiar with It from 
first hand experience in actual use. I will bo sending 
comments, suggestions, and reports on any bugs I find to 
UDRI, and wllfrevlew the package In a few months, after I 
get well Into using It. 

One thing I like about It already, Is that It uses 
Random files. Mine had used Sequential files, which 
presented a few problems, as In the case of the same 
contributor making multiple contributions on a given 
Sunday. Once a record was updated for a Sunday, If was 
written to the new sequential file, and It was not 
possible to update It again in a straightforward manner. 

Spectral FLEX 

If you are a regular reader of '66', you have most likely 
read Bob Nay's column and seen the short reviews of 
Steve Odneal's FLEX sold by Data Comp, and Frank Hogg's 
Implementation of FLEX. The third supplier of FLEX for 
the CC, Is Spectral Associates of Tacoma WA. They have 
a few wrinkles on FLEX that 1 should mention here. 
Spectral's version of FLEX may be run on a RS converted 
32K color computer without opening the computer and 
voiding the warrantee (only If all the memory happens to 
consist good 64K cfilps) by means of a little adaptor 
board they call a supercharger. This board plugs Into 
the Interface slot and It contains a connector into 
which the disk Interface Is plugged. That Is, this board 
is put between the Interface and its connector in the 
CC. The supercharger brings about the access to the 
additional memory. Spectral supplies a test program 
called RAKTEST that will teM you If all the memory fs good, 
and if \t is, you have 32K of free memory. 

Rapid developments In the CC have caused considerable 
complications^ as evidenced from the following quote from 
the Spectral Manual. 

"Version 1.26 of FLEX+ contains a version of FLEX+ 
which will function without a supercharger. This file Is 
called FLEX .NOS and it must replace the current 
FLEX. SYS In order to become the resident operating 
system upon Dower up. To do this, you must first DELETE 
FLCX.SYS and finally LINK FLEX,6/s. (I think they mean 
FLEX. NOS here) You will then have a version of FLEX* 
which does not require a supercharger* It will work on 
all TOP System 100 computers and TANDY revision F or NC 
Color Computers. CAUTION- this version of FLEX+ will not 
support Printer spooling." 

"Version 2-0 of FLEX* Is a stock version which does 
not require a supercharger to function, it Is limited 
as described above and contains a file called FLEX. SUP 
which may be converted Into a supercharger dependent 
operating system (capable of print spooling) as 
described above." 

Sounds a bit complicated. One point that may have you 
wondering- is the mention of printer spooling. Standard 
FLEX as ft was supplied for fhe 6809 systems on the SS- 
50 bus, had a printer spooling feature. You would run 
the output of the text processor or the assembler to a 
disk file with the extension ♦OUT, and then you would 
Invoke the PRINT command and tell the computer to print 
that file. The system would start the printer ancfgTve 
you the +++ FLEX prompt so you could continue using >he 
computer with the printer running in the background". 
You had to have a timer board installed in the computer 
to suppJy Interrupt signals so that the printer could 
run as a background task. 

Apparently, Spectral has figured out how to put the CC 
Into this mode, and It works rather well. Just like the 
original SS-50 version. Printer spooling is a 
convenience If you want to continue to use the computer 
for something else while printing a Jong listing. 
However It does not operate without a penalty. While a 
disk is being accessed to get another sector's worth of 
Information, the terminal essentially goes dead. If you 
ore a touch typist and ore typing along dumping text 
Into the computer as I am doing now, you wlllprobabfy 
find that the computer has Ignored a couple of 
characters every time the disk was accessed, if you ore 
Just editing a source file for a program and have your 
eye on the screen, you won't have much problem when 
running in this mode, but fast lyplsts should be advised 
that there ore some drawbacks. At any rote, Spectral 
FLEX Is the only version offering printer spooling. 

What's the Difference? 

Perhaps It Is about time here to compare the three 



10 



66' Micro Journal 



versions of FLEX that are available for the CC. First It 
should be said that they are about 95% Identical. That 
Is, they all work. They all have the standard FLEX 
utilities supplied by TSC. However, each has some 
feature or other that sets It apart from the others- 
Spectral, as mentioned above, has the printer spooling 
feature, and the possibility of use without modifying 
your older CC* 

Data Comp has a couple of features not found In the 
other two. They have a utllHy called DISKEX that lets 
you examine the data in a disk sector, and even change 
Pt If you so choose. D-C. has a set of three utilities 
that allow you to move files back and forth between RS 
formatted disks and FLEX formatted disks. RSREAD will 
read a RS binary file to a FLEX disk (assuming you have 
two drives)- RSCVBIN will convert that file to a standard 
FLEX binary file. It may be run In FLEX, modified, 
disassembled, etc. A FLEX binary flte may be written to 
a RS disk with the RSWRITE utility. I would say that D.C 
FLEX has the advantage for more experienced 
programmers who want to poke arouno In the RS 
operating system and perhaps write software to run on 
the CC In the RS operating system. 

The FLEX from Frank Hogg Laboratory has some very 
nice software configuration capability. You can set up 
the system parameters most flexibly of the three systems 
using FHL's SETUP utility- For example^ y u can set up 
the printer output routine so that it supplies the 
linefeed after the carriage returns, which are required 
by a printer set up In the non-auto linefeed mode 
(standard In FLEX) or you can set up the printer routine 
to suppress linefeeds (standard RS system mode). If you 
want to run a printer ALWAYS on your CC, you would 
probably set It to the Auto Linefeed mode so It would 
work with the RS operating system, and configure the 

?rlnt routine In FLEX to fne "R" mode (Radio Shack), 
ou could then move back and forth between the systems 
without having to reconfigure the printer, which In the 
case of the EPSON Involves removing four screws and 
opening the case to get at the DIP switch to change the 
LF mode. 

FHL FLEX also allows configuration of the disk drives 
with regard to number of tracks, sides, and stepping 
rate and configuring the terminal with regard to several 
different high resolution formats, all of which Include 
choice of "white on black" or "black on white" 
characters. 

Incidentally, all three systems support a 51 character 
by 24 line screen format with black letters on a light 
background (normally beige). Due to limitations of color 
CRT's, all work best In That mode with the color turned 
down so that the display Is essentially black and white* 
All three also supply an editor for use with FLEX. FHL's 
offering Includes a more capable editor than the 
standard TSC one that comes with the other two 
systems- All three supply an assembler. 

So, there you have It- One or the other of these 
systems might lust have that one feature that you really 
"need"- They &ri work very we II- 

Epson Converter 

A few months ag I mentioned the possibility of a very 
low cost serial to parallel converter to run an Epson on 
the CC. Clay Abrams sent me a design, the schematic for 
which is reproduced here- I've biillT a couple In what I 
might call a "poor man f s version". The Motorola 14411 Is 
rather expensive, as Is the crystal- I have substituted 
a 555 timer (35 cents)- The 555 Is a very stable timer 
IC. It Is only as stable, however, as the parts used In 
the timing circuit- Build this using a ceramic capacitor 
and a carbon composition resistor, and I guarantee that 
you will always be "tweaking 1 * the frequency- You must use 
a "film" capacitor at least a mylar type such as the 
Cornell DubMer type WMF, and preferable one of the Mylar 
Polystyrene low temperature coefficient types* Then you 
must use a wlrewound or metal (tin oxide) film resls+or 
and a wlrewound trim potentiometer- The values sh wn 
are for a 16X clock for 600 baud (9600 M2>. The CC 
outputs to Its printer port at 600 baud unless you POKE 
the counter location wltn other values- 

We built one of these, set Its period with an 
oscilloscope, connected It. and It ran- The AY5-1013 Is 
available from most Radio Snack stores In a 5 volt single 
supply version for around $5-00- The most expensive 
art is the connector for the EPS N at around *7- The 
_pson manual Indicates that pin 35 is "pulled up 11 to *5 
volts- It was an easy matter to modify the Epson board 
to connect the 5 voft supply directly to that pin and 
power the Interface from the Epson with no problems 



I 



encountered- The 5 volt only version of the AY5-1013 
from RS, of course eliminates the requirement for -12 
volts- Should you want to run the Interface at a higher 
baud rate, use a correspondingly smaller timing 
capacitor. For example, for 1200 baud, use a .005 Mfd 
capacitor, etc. 

Should you be a "disbeliever" In RC timing circuits, go 
ahead and use the crystal and the 144U. 

M re on Disk Drives 

A few months ag I made some comments on the use of a 
couple of 80 track double sided drives with the CC, as 
though there were no problems whatever with slmpty 
-urcnaslng two such drives and using them. There Is a 
LIGHT problem with that. All of the software for the CC 
is supplied on 40 track (35 track for RS disks) format. 
I was speaking as a person with several 6809 FLEX 
computers around- I nave available two 40 track double 
sided drives, two 35 track single sided drives, and a 
couple of 8" double sided ones, and I can therefore 
usually copy a disk In any format to any other- Worst 
case. I can juggle drives, and put one of the 35 or 40 
track ones on "rite CC to boot up FLEX. It Is an easy 
matter from that point, to copy FLEX to a new system 
disk on the 80 track drive- 

The RS system always uses 35 tracks, slnqle sided, and 
double density- Since the system doesn't know thar the 
drive Is double sided and &0 track. It will format the 
first 35 tracks on the first side, of the disk In the 80 
track double sided drive- Not very efficient, but 
completely RS compatible. Again, the trick Is to be able 
to read the dl sk supplied by the software supplier. 
(Games can be bought on cassette, and many may be loaded 
from cassette and saved to disk). WARNING* Not all of 
the games on the market may be copied from cassette to 
disk by this means- Some may. If you know or can figure 
out the load and transfer addresses. I was pleasantly 
surprised to find out that Spectral Associates games 
come on a cassette with complete Instructions for 
copying them to a disk file! 



All three of the FLEX suppliers hove missed the boat 
on one small point- None allow you to set the disk drives 
to the double stepping mode, In which It would be 
possible to read a 40 track disk. I can conceive of a 
hardware solution to the problem a doubler that would 
generate two step pulses to the disk drive for each one 
received from the disk controller- Such a circuit would 
make It possible to read any 40 track disk on an 80 
track drive, and even boot FLEX from the supplied dlskl 




c.w. I 






I 



68' Micro Journal 



11 



+*V .v 



— ' 


I 1 




> |6K 




1 • 




X*!** rR«M 






7 
C 


5 *t» i"?* 




j ! 


r % 


.*< *" 








I 


4- *iv^* '•M r **** - " 






pa. 


1 


J- 


P„.t Mdt'S t/t*W 













(For those who missed lost months "show" 
Indicates a Subroutine Entry Location.) 



the ' 



COLOR User Notes 



Robert L. Nay 

9900 Cassandra Smith Rd. 

Hixson, Tn. 37343 



Part 2; (BOSS REFEREWE for tfce Coior Computer 
CXTDCGD BASIC ROM 

Last month we printed a Cross Reference Listing for 
the Level 1, Ver. 1.1 BASIC ROM; this we are providing the 
same thing for the EXTENDED BASIC ROM. Again, It ts 
fairly complete- Notable exceptions are that there are 
several locations within the EXTENDED BASIC ROM where an 
Indexed JSR off of the U, Y, or S register Is made <at 
S9465. S94E2. S94F£ f S99EC, S9A05. and S94EF to mention 
some of them). Also, S9A12 JSR's Indirect from S00D9. 
There are a fe* locations where the Disassembler 
Interprets a Oc^pare #$$$$ as a Label; there are several 
In last months listing, also. 

Note especially the "Labels" In the SAOO O thru SBFFF 
area; these, are the locations where EXTOGED BASIC Is 
using Routines within the BASICs ROM. Though they are 
not DOCUMENTED" locations for "External Access" by 
Radio Shack or Microsoft, they will have to remain firm or 
BOTH ROM's would have to be replaced during updates, 
etc. The TDP-100 uses the seme ROM set, so Programs 
written using these locations would work on either 
machine. The other "similar" Computers (Dragon, etc.), 
00 use different ROM's; how about some of you readers In 
England, etc., letting us know how different! 



Finally, there are NUMEROUS JSR's and Internal M»s 
within BOTH the Extended and Regular BASIC ROMs. This 
means that ttiey ore NOT Relocatable without doing a lot 
of "Patching"; why they are written with a mature of 
JSRs and BSRs, I have NO Idea. I don't see that much 
difference In the amount of code required* OuaraH, the 
ROMs are extremely well written; I feel there was some 
reason that has escaped me. Again, some of you *>nore 
astute than I" (which does NOT require much astuteness) 
folks, how about a Mnt. 

If there Is enough request for it, we may publish the 
same thing for the Disk BASIC ROM; let's hear fro* you. 
The "project" now Is Documenting the Subroutine 
Entries. A lot of you have a lot of these Chips figured 
out; send me the "Documentation" and I will pass It on. 
What we need Is the Register Status upon Entry, what Is 
accomplished, what Is the Register Status upon exit, and 
which Registers are destroyed and which must be saved. 
This Information will make It MUCH EASIER to write 
Assembly Language Programs for the Color Computer, 
because you can use the fundamental Routines that are 
already In the ROMs for much of your code. 



10000 


9701 


10001 


94*4 l)C* 


10006 


B7*F pfPB «^l? HfUfl 99)6 6941 9790 


loooe 


•945 4«A* 


LOOOA 


0304 8)96 


L0O0* 


SMI i*C7 6(68 «fi? 906? 90*? 


1 0010 


90*8 


10019 


4*91 9*00 4878 9436 964? «Mt 96Ct 96C6 




9404 9604 94t8 96*f 9749 


LOOli 


t*6 ne 4043 BB4C 94*9 968* «*s 9cw 




980* 


L0O1D 


98X79 


LCK.ir 


84C1 MCT 9407 


L007* 


44€? 9600 


loo:7 


B6f» 


L^ft* 


8940 E9K 8998 B9*r 8A04 6AC2 889F 9)©C 


tOOTC 


0B49 


LOO?* 


9X2 


L00J9 


4896 9104 9740 


LOOJA 


9049 


LOOTB 


V7C0 


L0044 


638C 9510 


LOW- 


8B44 


LOO* J 


884* 


L0049 


8891 90*-8 914B 9749 9767 


LTO47 


8AC8 9*39 884 1 4©79 90 JC 9040 904) BOM 




90C8 WJC* 9009 90*7 9(04 91V 9100 910E 




91T7 91rC 9345 


LOOM 


654* 4S*5 4491 B49F 4484 


1004© 


4894 44V 


10040 


K4F 


L004T 


439a 4 $44 8*90 B49H B4FB 44 1 * 893) 9023 




910D 9«0J 9CT6 9€0* 9*0 9FF> 


LOOM 


woe 912H ?:?4 


100*1 


4410 9? If 97?3 


LOO*-? 


B79C 6^8 47(F 49* 8«4# BBB? 88EC 8f 40 




8f*9 8t*2 9>19 210 


LOOM 


BTfD 4JC* 9711 9?I7 


LOW* 


4394 B340 WJC 48>4 tm 4T4 


10041 


4498 8iA2 


LOOM 


WlC 


10045 


84 U 


L00A6 


4T7DA 42€7 4894 908) 


LOOK 


4489 


L006* 


B27? 9278 B?84 B79) 96A£ 88*0 89(9 BC48 




BC»^ Wl 


L0070 


8CC« 8CT9 8C^ 


LOOT* 


8088 


L0075 


B7W B344 8C44 


L0OT9 


Bi9i 4c*8 eooc 


L0C7A 


8004 BOOA 


LOOTC 


8344 


LOOT 


B3)1 436) 


LOO* 


B34C B3V, 8a J 4Ct 6 


LOOSA 


40M 4?AC B33T 4C4A 8CD7 80C) 9684 99<C 




OAOf 947? 9G86 908) 909? 90TA 90TJ 


LOOK) 


8CA7 


> too* 


81)4 97*1 931 A 8JW 66M 87f; 8«0A 881* 




884C 8«4A 890T 8910 897) 99«0 4984 89C) 




8AfC 8809 8B1) 8C23 8C47 806C OfCi 43tC 




4T6* 9183 94/0 9CA1 


* LOO*) 


8339 8"C 88TA 897C 4A16 BAIC 4AM 4817 




4B73 8C74 8C8C 8T3T BC07 8*94 WW> 93*9 




9)4£ 9)84 9)98 984C 9678 978* 9903 9C0C 




9TC3 


LOOM 


8700 B70C 4)98 BB4A 847 88?1 8894 88C) 




BBC* BftfT 8AT1 8AIB 9>fi 84t8 88?? VM 




9CM 9^34 9C38 


LOO*/ 


47M 44A9 


lOOBo 


*r * i;;- 


LOOBJ 


9)4C 999A 94** 94*9 90)7 


LOCUS 


9)47 9497 99*0 9*46 


LOf+4 


0)A7 94rr 99*0 


LOOM 


9)80 99A7 990* 


LOOM 


979? 937C 93 K 934* 9497 B9M 0)01 9Kf 




964) 9H-1 9789 97f0 9847 910* 


LOOP' 


4930 9M* 9iH 94M 96*0 9Arn 


LOOPQ 


97*8 97C4 97C9 g«40 96*) 98»r 


LOOSA 


9740 97C9 99 39 99C# 967L 06*0 966* 961F 


loon: 


Q*M 9*V 9*|' Q740 


LOOK) 


•7*r 9310 9391 9*0C 9*l7 9«lB 9444 944* 




94V 9)04 890* *9>4 99i8 •'If 9701 9944 




9991 99*9 69t* 99Ji? 99/0 «C0* 9*01 


L047K 


97P1 9787 «^|3 9Jt? 9M2 9TC4 


LM» f 


9399 94 »C 943? 94*7 94«€ 94 79 «49* 9)00 




9)11 9)19 99ir 997A 971? 970C 9C04 9C13 




9*09 


100C0 


9JAA 97C6 9998 B94C 9J0) 


looti 


9)93 090A 9419 0647 


LOOCJ 


9366 93*3 9*9C 94*4 9C8C 9tC4 9EC0 


100C3 


9U9 9301 9410 9423 9*4? 47l& 97C* 97&S 




97t3 9TT.7 97f9 97tE 9801 9499 94*9 99BT 




99ct 99tt 4tU 9ir* 9*3* 9^)3 9f90 9f68 


100C4 


97C6 47C8 9808 


10X179 


9)09 941 A 94)9 9477 97^0 97W 970C 47*0 




9?*4 9fD 9T03 9F4 1 9T72 9T7C 9TB7 


100C6 


9411 98C7 9*49 


100C7 


8707 936T 930) 90CC 9C0O 9f IF 


100C9 


8784 9 93 9307 90*6 9fH 9C10 


LOOCB 


9941 9987 99B* 9f*4" 9*91 9*^8 


LOOCP 


99C8 9907 9CB2 BTTO 9r>A 


LOOC* 


BA11 8A36 8A78 9771 «83) 987) 989* 9870 




9C0A 9*A7 


L(W 


S407 8*14 BA79 977* 9879 9898 987F 8946 




9970 997? 9IE9 9TJ9 


LO0C3 


897* 9994 B99T 89*6 6A3* 6*4) 8*9) 6*68 




8C96 8CA) 8C4) Bf69 BE84 4*9C 8*CA 4*C* 




9977 99*4 9*41 9*66 


LO0O4 


4794 97BA 9>F6 


LOOC^ 


8*0* 8*1C 4A41 8A6O 8CA4 BfAC ■COD BTC* 




97*£ 988C 987C 9C47 9C8C 9C*0 9C>9 9(78 




9*80 8*4) 


LOCOfi 


994F 9C*B 9(24 9C7t> 


LOOOT 


4)48 890» 8VI 8476 484? 4EAS B£*£ 8C06 




8*13 8*89 90*0 91 4A 97)3 9796 9»C 9770 




9778 94K 948) 99(27 997C 9948 09A9 99C2 



8))A B99B 8)8) 8A69 8471 8*74 8*48 BF4F 

4* A) B04A 908) 910? 91 14 91)4 979* 978f 

980C 98)7 9884 990C 9*18 9*3 9A4J 9*9* 

9808 4894 98A4 9806 98(2 9Ct2 9C0) 8C00 
OOOC 9O40 9119 9*89 9F9I 



^2 



4 68 r Mctq Journal 



Loooe 

L«10C 

LOOK 
LOOO* 
LOOEC 
t'XJEI 
1QOCJ 
tOOf? 
LOOT' 
tPOC^ 
V0OE6 
LOCE7 
LOOTK 
L00C9 
WCrr 
LOIOC 
Lfl»« 
LOtl2 
LtllD 

Lon? 
lc*:* 

lOiV 
LC1SC 

LO*M 
L0167 
L0»6* 
L01*« 
LQ16B 

Lfii77 
L9I» 
LO!7* 

LOI91 
LC192 
L0l« 
LOW 
10IB7 
L0I90 
LOIfA 
L0198 

> 101*0 
L0»A3 

mm 
LOIOJ 
I.010A 

Loin 

10H7 
L020C 

lotod 

LOUD 

L03D9 
LOW* 
L09D6 
144*9 
L8031 
L60C0 
LBOOA 
LBCOC 
L80C7 
L6I48 
L8154 
LB165 
LB 1 70 
La 170 
L*1F0 
L6797 
L«75 
L8763 
L8286 

> L629C 
LB289 
LB7B6 
L82CF 
L8206 
LB?rl 
L850* 
L89l 
L»li 

> LMU 
L6S40 
L«X 

Las*? 

> 1856C 

> 1837E 

> LB3A3 
■ L83A6 

L65*6 
LBJM 
L63C9 
L6307 

> L8JOC 
L8JOT 
L65C0 
L84T0 
L6437 
L84 3T 
L84JC 
LB44I 

» LM<« 
LMB9 
LM»l 
L*4*C 
L84C4 
L64C9 

>L84f? 
L6901 
L690* 

> LB9J9 
LB32C 
LMtH 
LB^«0 



1E31 
6F76 
9147 
96A2 
9F99 
8EFB 

9?72 
936C 
9938 
9*60 
9A71 
9651 
9A6F 



9t*r 

9A98 
6C42 



9W0 9007 
9DA9 
9C0? 
9CC9 

•9*3 695A 8964 8968 



8139 
6F26 
WW 
989* 
9EF9 
BCB9 
BT77 
91BA 
93BA 
9931 

bt<* 

9*0* 
62*8 
82*3 
60C1 
80C3 
8?M 
6023 
66C1 
8lAi 
9065 
9975 
9DTC 
8017 
801C 
8097 

9098 
ei9> 

816C 
802 7 
806C 

•074 
S06* 

806B 
807t 
8070 
90*3 

8059 
804t 
6047 

605C 
80*2 



8030 

8038 

BOX 

8167 BA/A SWC 

BOB9 

8086 

6023 

BCfB 8028 

BC7B 

6C74 

8336 

8329 

8933 8399 8604 66*© 

9732 

SCI? 

•BED 6BF* 

9019 

bfe9 

60*6 

•034 



8E5B 9CV BETS BCBB BFIB BF22 

6FTE BFAI 9033 9060 90CB 90Ef 

9162 97*1 9690 Wlft 9*1 2 9*30 

9BC4 06(8 9C14 9C1B 9C07 90*2 

BT09 BT09 BHA BFtE BF39 67*30 
0F91 6T93 BfDC 6T6A 9120 918C 

9934 9930 

9931 

9*6* 985? 

9*88 9*02 9*08 9*f 4 QR48 9874 

967* 

9*96 9*79 

CMV5 9079 

9870 9C41 9C49 9C40 

9**r 9*00 9A0C 9Ai2 966£ 

6ore 



9062 9110 9126 9179 914? 9164 
9169 



6002 

6082 

•1X 

6141 

B14E 

816* 

BI74 

8140 

01 70 

8971 

B26t B7B9 826F 829 3 

•07* 

801F 606C 

6039 

830? 8314 8316 

8206 

6203 

62CA BTtO 6306 

$085 

8309 8336 

B?F6 

87F7 

631& 

656* 

8397 

8362 

6327 632C 8354 

8366 

8 3 

8596 

8376 830* 

8304 

B36C 

83CT 

6366 

830* 

63C3 

6469 

•440 

8430 

646f 

847* 

6481 

6099 

649* 84*7 
84r? 
8916 
8489 846* 

Bice 
Birr 
83 X 
6927 
8976 
6988 



LB«C 


69AD 




L6*90 


MM 




L6970 


6963 




LB* " 


6576 




L69B1 


•99* 




L839^ 


B9fA 




1 ("'-■ 


6i7r 




LB99? 


89 9F 




Lfl. 


696E 




LB9*B 


B9AJ 




» L*5*T 


69*6 




» L6964 


6961 6990 69f3 




L8366 


6900 




L89C2 


6966 65C9 




L69C3 


6961 




L85CT 


65CC 




» L8901 


69C8 8606 8679 




L.B9D9 


69T» 




L65W 


6611 




L89T3 


AV» 




L89F9 


69€0 6607 B600 B62C 6644 




1.660T 


89C9 




LB613 


B61C 9623 




LB61E 


661* 




LB6J9 


89FC 6619 8633 




L862t 


66C2 




L862E 


B62A 




1.8630 


6637 




iBC34 


669* 




L 66416 


HM* 




LB64» 


6640 




» t86?0 


6609 664* 




> L«699 


6620 6640 0673 




L869C 


6646 




LftV" 


M.*€ 8667 




LB66E 


86*0 6683 




LB* 7* 


66 71 




LBB-'C 


86?7 




LB66^ 


8660 




> L8687 


8990 69f 4 661 7 6667 666C 


86A? 


L8694 


6690 




LB6A6 


8696 669* 669C 




L8606 


6196 




L86CB 


66X9 




L86TD 


86E9 




L870e 


8709 




LB774 


8601 6703 6 791 




L97J7 


6722 




LBT7E 


672* 




L673F 


8736 




lB7«6 


iTM 




' L8748 


8716 B7A3 




L87M 


6761 




LB7« 


6766 




L8776 


6779 




L877B 


6774 




L879C 


676* 




L«76f 


6713 




L«"R3> 


6 TIM 




L1706 


6768 




L8709 


8764 B7C8 




L870F 


6201 




LBn:* 


604D 




L»7t8 


86 30 




LB800 


68 OC 




L880* 


B7T6 




L880C 


BTTt 




> L660C 


662* 867* 6960 8QB4 




L681F 


BTT* $632 




L982f 


6621 




> L6834 


6608 6830 6830 




LB639 


6706 




L6B43 


67F.7 S66A 




L0846 


8044 




L6667 


8696 




> L8666 


867f B9C0 




L666C 


86C3 




> L66A1 


B87C 8664 




> L6B61 


666* 6866 




L6864 


•ill 




L6809 


6909 




L6QCF 


86F7 




L6BF0 


609T 




L690T 


667B 




> L691C 


69)1 692C 




L692? 


691 r 




L6OTC 


669C 




L6945 


693* 




> LB944 


6913 896? 




L694C 


8014 




L899? 


894* 




L*960 


BI9C 




L896C 


89 B6 




L»W90 


89 7£ 896* 





LB993 B99C 
LB«9F 899 7 
> L89A£ 6933 6966 



> LB9BB 


B9A1 683C 660? 


1898F 


89 8? 


LB9C0 


9360 


L6902 


89C7 


L89CI 


6904 


> L89TC 


BATA 8*27 6*>4 


> L8A02 


6A30 6A91 


> LBA04 


6*4 J 


L6A20 


6*18 


LBAJD 


6*29 


L8A3* 


6A37 


LB* 30 


6*20 BA70 


> L6A6T 


6*49 


> L8A66 


8A97 


L8*71 


8AB1 


18*77 


BA73 


L6*B> 


8*38 8A47 6A70 


> L8A66 


BA6F 8A79 8A97 BAF.9 8669 


LBA90 


BA8C 


> L6A91 


8AS9 8*39 


L6A99 


8A9F 


L8*99 


6AB0 8A01 


L6A96 


BAAA 


LBAAC 


8AC9 



L8A92 


6AA4 




L8A89 


6A86 




LBACO 


6A80 




L8*C2 


6A08 




LBA03 


BAA7 




L8*D0 


6A48 




L8*t1 


6AF0 




LP*C9 


8*0r 




LBAE9 


6AF8 




L6*E8 


861 1 




L8AED 


B«T2 


8807 


LB*EF 


8619 




LBBT3 


BAFF 


8803 8800 6677 


L8617 


68 79 




L86I8 


B6'S 




L8B24 


0679 




L8641 


8639 




L8B99 


8833 


8B3F 


LB867 


8661 




L867I 


6866 




LH6 78 


P4*B 




L867F 


866C 




L86** 


869 9 




L868C 


66CC 


6607 


L68*E 


BP91 




LB^BE 


66C7 




LBRCO 


BBC? 




L88^fl 


8899 




LBBE3 


eeor 




L88i* 


BBcro 




L68rr 


6BF3 


66F8 


L8C07 


8C03 




L8C08 


88^0 




L8C29 


BC1F 




L8C47 


8C39 




L8C44 


6C7A 


8C3I 


L8C**" 


6C97 


6C6B 


L6C6? 


831 1 




L6C89 


8C91 




L8C96 


ecet 




LSTOB 


8C60 




L8C61 


8C86 




L6C6F 


8C9F 


8CA3 


tecci 


6C8F 




LBCCS 


ecce 




C6CC6 


e(9a 


e<ei ecci 


L8CC0 


8C87 




L8CO0 


8C44 




L8CO0 


8C03 




L8CE7 


60 \0 




L8CE4 


6C99 




L8CF1 


8066 




L8001 


6CF9 




L800 7 


8CF0 




L801? 


600E 




LB014 


6CD0 




L6016 


6071 


8032 6036 803C 8042 


L8010 


6019 




L8076 


602€ 




L6048 


BO 18 


6069 


L8098 


601 F 


6 080 


L8060 


605C 




L606? 


6030 


6099 


L806* 


804E 


8066 6060 


L8068 


8040 


6080 


LB07? 


6034 


603A 6066 6090 B0A7 


L80 7C 


8CE6 




L8S69 


B06F 


6D9B 609F 60A9 6082 


L6086 


6087 




LB0A7 


80AE 




L8086 


809* 


6064 


L806C 


6072 




L80C9 


80C7 




L80C9 


60C8 




L6004 


60E0 




L600E 


800A 




L60E6 


80C9 


8DC9 


L60F6 


60EC 


80EF 


L 0OF7 


8004 


6C10 6E12 BE17 8C26 


LB0F9 


80CP 


B0F7 


L60F0 


6E00 




L8E04 


6026 


6093 6097 


LBCOC 


609? 


608A 


L6CT0 


8E2C 




LBC75 


6E2 1 




LBE37 


6CC1 




L8E36 


6E7 9 




L8C9F 


8E67 




L8E89 


8EF3 




LBE71 


6E80 




L8E62 


6f^9 




L6E86 


8EF6 


6F49 


L8C90 


8096 




LBE9* 


6E9? 





6S' Micro Journal 



13 



l8LA§ 


BEB4 






ISCaE 


8CA6 






LBr«4 


BtAA 






lm*» 


8EB2 






I8i«« 


BEBE 


BfOl 




L6CP6 


BEtO 






1»CD7 


BFO) 






1 BCD ft 


er<i 


8^98 




L«(OQ 


8E08 






l*tl2 


eecA 






LBEf r 


8CF4 






L8CT6 


BFO) 






L»H» 


8£r* 






i«r?e 


eroi 


8f I? 




iir?4 


6EC1 






L6F26 


6f)3 


er>r 




L8f41 


«En 






L6f4r 


8^7F 


*r)8 




^8f)A 


BFJ? 






L6F'4 


Itf20 


Bf)7 Bf)C 8f60 8F64 Bf6* 


6T6C 


LBFBF 


8FB7 






1IF96 


Bf 7C 


em eres 




Lerei 


8E60 






i6rt4 


8r|0 






tiFCt 


»TB7 


BFC2 




i8rori 


BF)C 


bcm atcc eec6 




IBriJ 


8rD£ 






LirE) 


9* Atf 






Llrrj 


9TH 






L8FF* 


6fr« 






LO011 


901) 






L90D 


901C 






1907) 


90OC 






L907C 


9C71 






L90)0 


9C4C 


Q10A 




L90*4 


9187 






L9060 


90)? 


98)C 




19069 


90" 


9079 909C 




l»0?C 


90f>2 


9086 906* 




18096 


90<»* 






19091 


908C 


9094 9CA1 




L00A9 


906F 






VOOAA 


8)60 


8B76 9097 9BC? 9B00 




190B2 


90AC 






190B3 


907E 






LO086 


9069 






L90B0 


90B* 






L9f»«f 


90(9 






V90CB 


90!lf 






L90£? 


9G£6 






L90fA 


90S? 


90)1 9008 9OF0 90F9 




190CE 


900) 






l»off 


90C0 






191Q8 


9104 






L9I00 


90C7 






191 t6 


91 1 1 






L91 18 


9118 






L9W9 


91 74 






19130 


9t3> 






L9I 1C 


9t30 






19141 


91 3F 






L9I*> 


9196 






L9I67 


«D? 






L916F 


916* 






L9H7 


91 7A 






1916) 


90)4 






19*9€ 


9194 


919* 




L91A0 


9TAC 


9160 




19166 


9t A4 


9UA 




L91BA 


91*14 






191C4 


9!Bt 






L91CC 


•»1C? 






L91C0 


9079 


91 1 ) 




191C0 


9117 






L9ir« 


91tF 






L9H9 


9106 






t 9 t F1 


9ife 






19700 


91F1 






19707 


9030 


90ff 914C 




L97TI 


924) 






L9713 


922E 






L92J9 


9730 






19249 


9047 


9711 9210 




L9740 


90F2 






L97)6 


9248 






19797 


97)8 






1926) 


903A 


9000 




L97«A 


976C 






1927A 


9276 






19778 


97BC 






197lM 


9047 


91)1 




L926E 


9292 






LQ7§r 


979B 


940f 9918 




L9798 


9)3F 


9374 94)) 947F 980) 9664 





L979C 


926f 






L»2?D 


9266 






192E9 


9 206 






L92C° 


9490 


96?B 




L92C0 


9JF) 


9B6) 




L970 


97EC 






l*1*C 


931A 


936) 




19)03 


9>A0 






L9S09 


9)0) 






1931' 


93»2 






Uti» 


9)66 






L9310 


9))C 


9470 


96r* 9CA9 


L9)20 


94 26 


9)2r 


9F.PF 


L9)2C 


9)24 






19)38 


9330 






L9J49 


934T 






19)*1 


9346 


9))f 




L9))6 


939C 






L93)6 


9)47 






L9366 


9)63 






19)77 


9460 


94C4 


99f£ 


1939F 


9>CE 


916) 




L939E 


9)99 






L9)67 


9339 


9)96 


08T2 9EA6 


19586 


9380 






L9)C£ 


9)C) 


93C7 




C93C9 


9)0C 






L9i20 


93tC 


91£1! 


9C2I 


19«*» 


9406 






190Q 


94)0 






4.9*32 


9441 






t9*34 


942C 






L944) 


9438 






L94|4 


9408 


941E 


9454 9448 


194V 


9446 






1,«4)E 


94*« 


948B 




L946C 


94FA 






L94*f 


94CA 


94t 4 




L9«"'» 


91^ 






l9«SA 


9494 






L94Q4 


94)C 






L94Q0 


9466 






L94A1 


9J7A 


9C76 


«*0F 


L948? 


94AC 






L94C1 


9 4SC 






L94CC 


94C6 






L940D 


9407 


9408 




LT4E7 


94FA 


9)00 




L99C2 


94C9 






19)06 


9464 


9976 


998C 99C8 


19)00 


94*1 






L9)0E 


9404 






L9«n 


948C 


996) 


99E2 


L9)IB 


94AC 






L9)27 


991) 


9EA3 




L9536 


9)44 






L9))8 


9)5* 






19542 


9)52 






L9))2 


9)46 






L99)9 


95)0 






L9))A 


9)*4 


9)4A 


9))) 9)9) 


L9))0 


904F 






L996C 


9)66 






L9)76 


9)7C 






L9)76 


9)74 






19919 


9)7r 






L9918 


9»71 






L9)B1 


936E 


96FC 


9907 9CC6 


L9998 


9)66 


9«AA 


999T 


19)«A 


93T5 


9)81 


9CC0 9094 


L9)A* 


9)96 


9)9t 




10)AA 


9676 






L95AC 


827) 






l99tr 


9»AA 






L9)f7 


9)r4 






L9)FB 


95F7 






L9600 


960C 


9614 




L9607 


9601 






L9609 


960) 






L960F 


9)EB 






L9616 


9689 






196)0 


9623 






L966C 


964C 


96T0 




L9660 


962A 


96)8 


9694 9664 


L967F 


9672 






L96B7 


966) 






L96B0 


96C4 






L96CB 


96C4 






L9604 


96BB 






L960B 


96C2 






L96E6 


8096 






L9707 


9631 






L9710 


9472 


94A) 


970) 


L97M 


9721 







I97li> 
L9736 
L9 7)l 
L97*» 
19737 
L919A 
L976) 
L979A 
L979f 
L97AC 
L97B7 
L97C0 
L97CA 
L97C5 
19701 
19716 
19606 
1960C 
L96I6 
L9627 
L9623 
1962E 
L9631 
196)9 
196)? 
198)0 
L9AA4 
L9861 
L967) 
L9677 
L96B4 
L9690 
L96A1 
L96B1 
198CC 
L9607 
L98E6 
L9BtB 
L98r? 
L990A 
L99)1 
L9934 
L9936 
L99)4 
L99)8 
L9969 
L996C 
1996E 
19970 
L9063 
L998C 
1999C 
L99A1 
L99AC 
L996A 
L»OC< 
L99Cf 
LOQOF 
L99C8 
L99EF 
L9«f : 
L9A69 
L9A06 
L9A1? 
194)7 
L9A37 
L9A39 
L9A43 
L9A)C 
L9A60 
L9A66 
19A9A 
19A9T 
19AA0 
L9AAF 
19A62 
L9AC0 
L9AC3 
L9AC0 
L9A00 
L9AE7 
L9ACB 
L9AF2 
l9Af A 
L9Arf 
L96D 
L9616 
L961T 
19677 
19676 
19B49 
196)' 
L969A 
L96)r 



04 48 

97 >C 
9723 
97) 4 
974) 
9796 
9161 
9791 
97A9 
97A6 
97BB 
97BC 
9796 
9 7C0 
9706 
97E) 
9670 
96»7 
96)7 
967C 
9610 
9662 
960f 
979C 
91T8 
9667 
98)9 
986A 
96C9 
9666 
967A 
968A 
9666 
9699 
9768 
98C6 
9HC0 
99*A 
96CE 
9909 
9970 
99)9 
9936 
994- 
99)1 
9963 
99BA 
9998 
9981 
• 97C 
9974 
0996 
9961 
99C4 
9979 
9966 
99T2 
9910 
99B6 
99|«v 
9AC1 
99f C 
99c? 
99?« 
9C18 
9A36 
9A3) 
9A4C 
9A)8 
9A)1 
9A«r 
9A9C 
9A9A 
9AA1 
9AA8 
9AB0 
9A63 
9A64 
9A6i 
9AC6 
9A0C 
9AC) 
9AE0 
9At4 
9AF8 

9eor 

961) 
9ptA 
9AF0 
9AE9 
96)) 
964 9 
9640 
9661 



9«B7 97CA 
«72C 
9^*1 9767 



969F 9ffA) t»6A9 



999C 

997? 996C 

99C 990F 
0969 
99»* 
990' 



99fft 
99»» 



9A4) 

9A)0 9A9A 



9A77 9A9I 9A86 
9A76 9A«< 9A86 9«7) 



9601 9616 9B10 



964' 
9S91 



14 



68' Micro Journal 



19664 
1967} 

> 19660 

> L9663 
L9B66 

> L966C 
L9897 

> L9696 

L969A 
L9PAC 

> L96BT 
L96C6 

> L98E7 
L9BF6 

t96t< 
196F1 

L9err 

L96F7 
L»BfC 
L9C0T 
L9C0* 
» L9C1P 
L9C?7 
L9C3E 
L9C3A 
L9C9B 
L9C6? 
L9C7A 
L9CC6 

> L9CC6 
L9C01 
L9C0) 
L9C00 
L9CF4 
L9CfC 
L9071 
L9P4C 
L9D4F 
L9037 
L9039 
L9061 
L9P69 
L9060 
L9077 
L90TB 
L906? 
L9C0) 
L9DM 
L906C 
L909F 
L«P9? 
L9096 

» L9PA9 
L9O60 
L9060 

> L90C3 

> L9DC4 
L90C7 
L9PCK 
L9DC* 
L900C 
L90E8 
L90F? 
L90f C 
L9E03 
L9F0D 
L9C71 
L9C20 
L9E3? 
L9F** 

> L9F*B 

> L9F3F 
L9E69 
L9E6A 
19E76 
L9E76 
t91A3 
t9cf>r 

19F19 

19* fo 
L9r ii 

L9T51 
L9F36. 
L9T06 
19T68 
L9M* 
L9F0* 
L9FB7 

L9rer 

L9F9A 
L9rA3 
L9FA6 



9636 
967C 
967? 
9*76 
9669 
96A* 
9690 
9A47 
9CtB 
9DA6 
<>ACO 
9ATA 

96r0 

9AAA 
969C 
9C?9 
9660 
96P0 
9661 
966C 
9666 
90CD 
9 A* I 
<»C*3 
9C?C 
#930 
• C48 
96C1 
9636 
9864 
9PA6 
9AC7 
9C03 
9CC9 
9CE6 
9CEE 

9cr* 

90PE 
9036 
9033 
903F 
9D?9 

•o:o 

904 A 
9044 
904 1 
904 7 
O030 
906 A 
9039 
9033 
9031 
9060 
9CC 
90C0 
906? 
906C 
9116 
906A 
9C09 
90AB 
9070 
90E6 
90DF 
90U 

9ore 

91 DO 
9FO0 
9EI6 
9E76 
900 4 
9130 
9EA3 
9E37 
9E60 
9f*4 
9C7 7 
9*07 
9C9C 
9CCI 
9CE3 
9FAJ 
9'CC 
9f?9 
9T46 
9f3f 
9F39 
9F6E 

9r7f 

9F7 4 
9F06 
9F93 

0FOO 
9f96 



9670 
907C 



9AA3 9Atr 960A 96AC 9B0A 9CTr 9C77 
9C£1 9010 9E)7 9EJC 9(36 



90fF 9016 9E6A 

96C3 9600 9604 96EF 96F3 96re 9PrO 



9C0A 9096 



90ir 9E6C 
9C0f 



9CCA 9CF? 9Cr* 9037 9E?r 



9010 
9063 9E41 



9064 90E? 

907* 907C 9006 9090 

9DC1 

9079 9060 9063 9096 9E36 



9F70 
9T4F 



9F76 9F63 



L9FA7 


9r»? 


9F20 


























L9FP4 


9FA6 




























L9fB> 


9066 


9F37 


9F6D 
























L9*©4 


9roo 




























L9F0F 


9F6D 




























L9FE? 


9Eri 


9ET6 


























L9FF6 


9Ft3 




























LACE? 


6060 




























LA0E8 


60r:0 




























LA171 


6667 




























LAI 76 


6CC6 




























LA?6? 


67E4 


67EE 


036A 


6639 


6CP6 


eccr 


erro 
















LA33*- 


6666 














> 


LF960 


#^r- 










LA3C0 


69CC 














> 


16643 


r3r 4 










LA406 


6663 














> 


L6634 


0'41 


9A3? 


9CC6 






LA479 


6CT8 














» 


L0AA- 


0»3C 










LA420 


6CAD 














> 


16*39 


»^3 


6E0F 








LA444 


6799 
















i**9e 


07-0 










LA44t 


63lt 














> 


L66*4 


PTftf 










LA491 


6336 














•> 


I0e4p 


»€?3 










L4496 


8C66 














> 


L6706 


P"*?1 


6C3) 


93sA 


9673 9674 9660 


973f 


LA303 


6C77 














» 


L670E 


0^'J 


876C 


9C03 


9rr 5 




LA376 


6374 


6C23 


6C6E 










> 


L6734 


9?rC 


9 3A6 








LA39* 


600A 


6743 












> 


LB7)^ 


«'D 


6 706 


9630 


967f 




LA5A* 


69C9 














> 


LR73P 


rser 


6*»4^ 


8C9) 


9CRT 




LA3AE 


6no 














> 


10740 


op:d 


9E0C 








L**C7 


096 1 


0A3A 


6C3 3 


6C96 








> 


L67C2 


IH3 










LA5EA 


6666 














> 


L««A^ 


MM 


830A 


039? 


0AA3 8BA9 6EDA 




LA616 


6C3F 














> 


L6«3t 


0BTF 










LA619 


ecco 


0053 












> 


L699C 


6063 


68 9C 


6F0O 






LA«3* 


0C«P 














> 


L699r 


09O£ 


6E36 








LA644 


BCF£ 














> 


L69Af 


8332 


6tK 








LA6J0 


BC7| 














> 


LB9AT 


6902 










LA63F 


934 T 














» 


L69?»4 


92?*4 










LA10? 


6346 














> 


LB969 


0304 


f ««« 


e*i \ 






LA7C9 


69T4 














> 


IB9C2 


8376 


04f* 


6477 






LA7f 4 


63^ T 
















L6A1C 


881C 










LA974 


06f7 


9A3F 














16A3A 


0401 










LA97* 


9A2T 
















16A92 


B39C 


8830 








LA9A7 


0A7C 
















L6AC3 


B3C0 


0467 








LA96B 


9CA3 














> 


L6ACA 


0470 


04P' 


4r3 


9106 




LACIE 


664E 














> 


1604P 


P^20 










LAC33 


99B4 


9Cor 


9090 












1609C 


0*0- 










tAC4f 


666E 


ecor 












> 


1666A 


91r9 










LAC60 


6906 














> 


16602 


90C) 


9134 


91€4 






tAC73 


0*A6 


^9*P 


AA*4 










* 


ieeer 


63a) 


046C 








LAC7C 


• CAC 














> 


IBC14 


639i 


04^6 








LAC90 


6306 










i 




> 


lBC7f 


301 


4f t> 








1ACA6 


0*5 <M 














> 


LBC33 


6 360 


6494 


8606 






iACCf 


6A4E 


0A6t 


96CB 










> 


16C4C 


6«a; 










tACFI 


09AP 














> 


LI^C^F 


848P 










LA001 


6*3C 


0O77 


0AO6 


6AC4 








> 


L6C60 


8446 


0AJ4 








LAO 19 


IC^7 


9703 












> 


L6CAC 


A4 K4 


90C9 


9IEC 


91F< 




LA07i 


f«*| 














♦ 


L8CC0 


9707 










LA076 


04{»Q 


0A4F 


96CE 










> 


L6CEE 


049C 


P3Ci 


0329 






LA033 


SttA 














» 


L6099 


8A77 










LA09f 


9*CI 
















L606f 


«IF * 










LA0C6 


B2rt 
















L6PBP 


91F9 










LA004 


fi»4^ 
















L60C^ 


9P06 


• 106 








LAOEfi 


t7R0 














> 


L60C3 


00A6 










LACf 3 


07P* 














> 


L90CC 


62E9 


8^AT 


66A3 






LAC02 


l»Jf 














> 


L60C9 


8607 


9CCE 








LAEEO 


afoc 
















L6EC0 


040 ■ 










LAf6 7 


09'4 


09AE 


09FQ 


aerr 










L0f<"» 


97 OC 










LAF44 


9F9 
















L6EF9 


63PC 


40r 


6330 


9747 




LB03* 


69E3 














> 


L6EF0 


B3C6 


046C 








L6MI 


0St« 


6r9E 


9f03 


9fEa 








» 


LBffr 


9519 










L61 A3 


6091 
















LHf 16 


031F. 










L8 146 


0*99 


69EF 


0E4A 


6EOA 










L6> A« 


B3A6 










LBM6 


6»i0 


6739 


6761 


6796 


6E47 


9A20 


9CC) 




LCP07 


60AC 










L6136 


6C97 
















CFFC* 


96:i 










L0J44 


6906 
















LFFC6 


9-5AE 










L6767 


6170 


6660 


6937 












LFFOO 


eoP' 










L87f 7 


6*:» 


67»0 


673C 


67A6 


066C 


9)71 


9)66 
















1076A 


6*6? 


6606 


674E 


677E 


6660 


9366 


93A3 


936? 












L6760 


6362 


8736 


6793 


67AO 


69CF 


6A72 


6A2F 


6C7C 














0C9P 


ef er 


9309 


93TE 


9337 


936C 


9766 


976C 














9E0 4 


9fD0 


9FF7 
























L676F 


6715 


6691 


66A3 


6946 


6906 


6F9F 


93A0 


9 3C6 














940) 


9476 


0729 


9793 






















L6777 


6090 


6163 


67CC 


6602 


66E6 


9 3E2 


9?«6 
















L6704 


9C*« 




























L6?CF 


9'6*> 




























LB3^7 


66C* 


6606 


6667 


691 A 


96CC 




















L633C 


6**C 




























LB3A2 


6173 


9C77 


9013 
























LP4AA 


eo:c 


6330 


6449 


6724 


6970 


6A0 3 


6C3E 


6E64 














6' 47 


933f 


9660 


96A3 


973? 


962E 


9609 


9AC0 














9°{6 


9P4C 


9M0 
























LB4f3 


0'OC 


9336 


























L64r« 


B«?3 




























L6>0F 


676F 




























L63t6 


6CI^ 




























L6MA 


69C6 





























'68' Micro Journal 



15 



n/\ir 



C" User Notes 



Norm Cc 

3 Pryor Road 

Natlck, MA 01760 

This month I would like to go over some string 
functions that many of you might not have in your 
libraries. People who do major software projects 
inevitably find themselves manipulating stings In some 
form or another. A rich library of string manipulators 
Is certainly an asset In those times. 

Most good C libraries will have a few of the basic 
string operators. These usually Include 

strlen(s) return the length of s 

strcpy(t f f> copy f Into t 

strcaKtJ) aefd f to the tall of t 
strcmp(sl,s2* compare s? against s2 

it has generally evolved that the string which Is acted 
upon Is passed as the first argument. Think of them as 
*to" and "from* 1 or "destination" and "source". 

There ore several others that are also very handy. 
*ost libraries Include some but not all of them. A few \ 
hove not found In the libraries that came with any of the 
6809 C compilers f've tested to date. These functions 
include 



strclr(s,n) 

streq(s1.s2) 

strncpy(r,f,n> 

strncmp(s1,s2,n 

strneq(s1 ( s2,n) 

reverse(s) 

strins(t,f,n) 

strdel(s,n,o) 

strsub(s1,s2) 



clear n bytes of s 
test If si and s2 ore equal 
copy n bytes from f to t 
> compare n bytes of si and s2 
test n bytes of si and s2 
reverse the characters In s 
insert f into t at n 
delete n bytes fro>n s at o 
find the position of si In s2 



strcIrO Is straight forward and Is nice to have In 
your library* While most string handlers will leave a 
string terminated, you may occasionally need to Insure It 
with this function. 

/♦ 

* dear cnt characters of s, return 

* a pointer to s 
*/ 

strclr(s,cnt) 
char ts; 
int cnt; 
i 
char tpnt; 

pnt ' s; 

ihiletcrt--) 
•pnt** = '\r; 

return(s); 

} 
Almost as simple is streqO. All it does Is invert the 
logical meaning of the value returned by strcmpO. Since 
strcmpO returns the difference between the nonmatchlng 
characters, a zero value Implies that the strings were 
equal. This Is sort of counter to how C usually 
Interprets zero (as FALSE) so streqO turns It around 
to make the program a little more readable. 

/♦ 

§ test si and s2 for equality 
•/ 
streq(sl,s2) 

char tst, *s2; 
( 

if (strcipUl,s2J) 
return (FALSE); 
return (TRUE); 
) 
strncpyO allows you to limit the number of characters 
actually copied Into si. it might be used to Insure a 
uniform string size. 



no lore than n characters 



16 



* COpy no ■ 

* of t to f 

♦/ 

strncpyftoJroijCnM 
char tta, Mroi; 
int cnt; 

{ 



char tpnt; 

pnt ~ to? 

*hile((«pnt+* = ffroi**) H —cnt) 

•pnt'* '\r: 
return(to); 

) 

The lone semicolon after the while statement is no 
mistake. All the work Is done In the conditional test. 
Copying the NULL into sJ at the end Is an escape hatch 
for the case where the loop is exited with n == 0. 

This example brings out something subtle- At first 
glance, the following two fragments may appear to have 
synonymous function. 

while (*s1++ * *s24+) 

while (*s2) 

•sH* = *s2++; 

They are not the same. The first example would copy all 
of s2 Into si Including the terminal NULL character. 
This happens because the character Is copied, and the 
pointers updated before the comparison Is made. In the 
second case, by testing for the end of s2 first, the 
terminal NULL Is not copied, 

strncmpO Is similar In that It lets you put a limit on 
how many characters ore actually compared. 

/* 

* cospare no tore than n characters 

* between si and s2 
*/ 

strncip(sl,s2,cnt) 
char tsl,fs2; 
int cnt; 
C 

while (Itsl « ts2) U -cnt) 
{ 

si**; 
s2**; 
> 
return Us2-tsl); 
) 
strneqC st,s2.n) Is similar to streqO except that 
strncmpO is called, and n Is passed along also, 

h 

* test no lore than cnt characters of 

* si and s2 for equality 
»/ 

strneq(sl,s2jcnt) 
char tsl, ts2; 
int cnt; 
{ 
if (strncip(sKs2,cnt)) 

return(FflL&E); 
return (TRUE); 
) 
Why reverseO never ended up being called strrevO Is 
beyond me. 1 guess the best of conventions break down 
at times. At any rate, reverseO takes a string and 
reverses the order of all the characters with the 
exception of MULL which remains at the end. 

/* 

* reverse the character sequence 

* in s, return pointer to s 
t/ 

reverse(s) 
char ts; 
{ 
char *hd, *tl, teip; 

hd = s; 

tl = nd ♦ strlen(hd) - 1; 
while Ihd < tU 

{ 

teip s *hd; 

•hd** s fti; 

•tl- * teip; 

return(s); 

) '66' Micro Journal 



The next functions I have not realty seen In may C 
libraries- I got the bug to code them after reading an 
article In one of the ACM (Association of CompuTlng 
Machinery) Journals* The article said that they were 
useful Pascal functions and procedures- Well If they're 
useful, then they're useful In any languege and that 
Includes C. 

strlnsO Inserts one string Into another at a given 
offset- The first character In the string Is assumed to 
have an offset of zero. 

/* 

# insert froi into to at offset, the 

# first position is zero. 
♦/ 

strins(to T froi, offset) 
char ftto, ftfroa; 
int offset; 
( 
int i, j, lent, Ur»2i 

/# split up the destination #/ 
lenl = strlen(to); 
len2 = strlen(froi); 
i s lenl; 
j - lenl ♦ len2; 
Nhile (i >= offset) 
toCj— 1 = toCi— ]; 

/# splice in the source ♦/ 
i *l| 

j * offset; 
*hile (i ( len2) 

toEj++] = froin+*J; 
returndol; 

) 

strdeK) deletes a portion of a string* Note that the 
first character Is assumes to have an offset of zero- 

/♦ 

# delete cnt characters froi s starting 

# at the offset 
#/ 

strdel(s,cnt,offset) 
char *s? 

int cnt, offset; 
{ 
int len; 



pntl++; 
pnt2**S 

if (#pnt2 == '\f') 
return(cnt); 

cnt**; 

) 
return(-l)S 
) 

These functions have all been tested and work. For 
the most part they should be pretty bullet proof. I 
tried to anticipate and handle the common error modes, 
but you might want to think through them yourselves Just 
to be sure. There Is also the option of changing the 
number parameters from being "zero based" to begin "one 
based* 1 . It's your choice. 

I originally wrote and tested most of these functions 
using for loops Instead of while's. I then tried to 
compile them with the Word's Worth compiler. In most of 
them, I had two variables being Initialized and 
Incremented. It was strictly a no-go situation. I had 
either uncovered a bug or the fact that the compile 
doesn't Implement the complete for loop syntax* I have 
nof talked with them about ft so I won't speculate. 

Just to make sure that It wasn't some stupid little 
thing that I had over looked, I coded up a quick little 
test case as follows 



iiinO 
( 
int 1, ji 

M case II §/ 

for (i = I; i < 11; i*0 
j ♦■ u; 



/« case 12 #/ 

for (i * j * I; i < If; i« f j«) 
j ♦« If! 

/# case 13 #/ 

for (i - #, j = l; i < ll; i«* f j**) 
j ♦= lir 



len = strlen(s); 

if (offset ♦ cnt >= len) 

return (s); 
strcpyUs ♦ offset), (s ♦ offset ♦ cnt)); 
return (s); 
} 

strsubO returns the position of the first occurrence 
of one string within another string. If the string was 
not found* It returns an error code of -1 ■ 

/# 

# return the position of the first occurance 

* of s2 in si, or -1 if s2 is not found. 
♦/ 

strsubfsl, s2) 
char #sl f #s2; 
{ 

int cnt, lent, len2? 
char ftpntl, #pnt2; 

lenl = strlen(sl); 
len? * strlen(s2); 
if (lenl < len2) 
return l-i); 

cnt - l; 
lenl ■« i«i2; 
nhile (lenl-) 

{ 

pntl * sltt; 

pnt2 = s2j 

nhile (ftpntl ** #pnt2) 

'66' Micro journal 



Cese II compiled with flying colors. 

slther a semicolon or bracket (I 



Case #2 failed. 
The compiler expected el 

have forgotten) In place of the comma following 1++. Case 
*3 failed because the compiler expected a semicolon In 
place of the comma following 1=0* It also failed again 
after the H+. 

I just wanted to let you know In case some of you were 
encountering these errors and thought that It might be 
some problem on your part. It sure had me fooled; to the 
point that I even got out the master copy of.verslon 
2.02 as a check. 



WHAT'S NEW 

Simply put, very little. I haven't yet received the 
Mlcroware compiler; but I expect It shortly as I 
understand that they are now <mld-March) testing It In- 
house. I wes so busy this month getting 0S9 level 1.2 up 
on m system that I haven't had a chance to really try out 
the Intro! floetlng point package yet. 



By the end of summer I hope to have another system up 
and running* This one will even be quasi-commercial, ft 
will be built up on the SS50 bus and have 8 Inch drives. 



I am toying with the Idea of getting and auto-answer 
modem and another phone line. That would open up the 
possibility of letting you dial up and down loed source 
code that appears In the column or depositing comments 
and opinions. 

Next month's column Is still quite embryonic. That's a 
euphemism for the fact that I haven't got a clue for 
what's next. TIM then... 



17 



'C 
FLOATING POINT 

By Allan R. Batteiger 
and Howard L. Harkness 

Floating point math was one of the 
features originally omitted from the Word's 
Worth Middle-C(tm) distribution package. 
This was primarily due to the structure of 
the original 8080 compiler written by Ron 
Cain, which would require an almost complete 
re-write to add a floating point type and the 
associated intrinsic functions. However, it 
is still possible to get the use of floating 
point even though it is not actually part of 
the compiler. 

This article is the first of a series 
describing a floating point library written 
especially for Middle-C. The concept of the 
external floating point library was borrowed 
from the BDS C compiler, which is one of the 
most widely distributed C compilers for the 
8080/ Z80 crowd (mob). The code is adapted 
from a similar package originally written for 
the 6800, modified to run on the 6809 % 
interface with Middle-C, and emulate the 
AMD9511. 

The 9511 format was chosen because it is 
available on several 6809 systems (and 
because Allan has one in his system to test 
the package against!). Users who are 
thinking of upgrading their systems to use a 
9511 (if it ever gets cheap enough) can get 
some experience with it ahead of time. Then, 
when the happy event eventually does happen, 
very little, if any, code will need to be 
changed in the applications packages to make 
them work with the 9511. Although the 
package was designed for Middle-C, it will 
probably run with any currently available 
6809 C compiler with only minor hassles. 

This packagage Includes the four basic 
functions, along with utilities to normalize, 
complement, convert, input, and output 
floating point numbers. Since the package is 
not 100) complete as of this writing, we may 
add other functions that we think of along 
the way (suggestions welcome). 

FLOATING POINT OVERVIEW 



Floating point requires two parts. The 
first is called the mantissa, which is the 
'significant digits' of the number. The 



second is the exponent. This does not 
represent a power of the mantissa, but refers 
to the power of two by which the mantissa 
will be multiplied to calculate the actual 
value of the number- This corresponds to the 
number of bits that the mantissa had to be 
shifted before it was 'normalized* , or 
left-Justified in the floating point 
representation. To do floating point math 
where there is no type 'float', we must use 
an array of some other available type large 
enough to hold the representation we have 
chosen. For single precision in the 9511, 
this requires 32 bits, or 4 bytes, which can 
be either four characters (char float[4];) or 
two integers (int float[2];). 

The mantissa is expressed as a 24 bit 
fractional value. The exponent is an 
unbiased 2 Y s complement 7-bit value with a 
range of -64 to +63- ' Unbiased 1 means that 
there is no constant added or subtracted to 
the exponent before the value is determined 
(biased exponents are fairly common in 
floating point hardware) . The most 
significant bit represents the sign of the 
mantissa. Bit 23 must be 1 except when the 
value of the floating point number is zero, 
in which case all bits in the number are 
zero, the total dynamic range possible with 
this format is ♦/- 2-7 X 10 ## -20 to ♦/- 9.2 X 
10** 18. This should be suitable for the vast 
majority of floating point applications. 

The core of the 9511 emulator is written 
is 6809 assembly, with the rest in C. In our 
next installment, we will present the source 
code for the core portions (and as much more 
as will fit into a reasonably-sized article), 
and a more detailed explanation of the theory 
of operation. By the time you finish this 
series, you should be able to glibly rattle 
off the buzzwords associated with floating 
point math, and may even be able to 
(patiently) explain the whole thing to your 
uninitiated friends. 



M«(**\ 



AMD qsri I 

FORMAT 



S1C1M 




■ f 1 » » 

EXPONENT 


*i 


MANTISSA 








. • * 



* £XCEPT }rO* FLOATIM* POINT ZZkO 



^B 



68' Micro Journal 



HOW TO GET THIS PACKAGE 



Current registered owners of Middle-C 
will be recieving the floating point package 
with their free 2.1 update. Note to 
customers: If you haven f t already done so, 
please send your Middle-C 2.0 9 2.01, or 2.02 
disks back for the update now. For your 
convenience, you may send a copy of the 
invoice and $6.00 ($7.50 overseas) in lieu of 
the original disk. 

If you are not a current Middle-C owner, 
you may purchase Middle-C 2.02 for $99 now, 
or 2.1 for $110 when it is announced. If you 
have another compiler already, and only want 
the floating point package, send $17.50 to 
Word's Worth, P0 Box 28954, Dallas, Texas 
75228. However, the published source will 
probably be short enough that typing it in 
will not be terribly onerous. 



OS9 USER NOTES 

By: Peter Dibble 
517 Goler House 
Rochester, NY 14620 

I Just Installed OS-9 Level Two Version T,J. 
Finally It's not "preliminary" any more. Since OS-9 
never was very unreliable It Is hard to tell whether 
It Is more reliable, but It is very easy to 
appreciate the new utilities. I spent months 
writing a PW0 program. It prints the name of the 
current data or execution directory. I hoped 
someday maybe I could sell that program. Well, 
Mlcroware beat me to It. The new versions of OS-9 
Include PWD and PXD, Print Working Directory and 
Print execution Directory. They also added a 0EL0IR 
command which deletes a directory with all the files 
In It, a command called I DENT which displays 
Information about modules In files, a file 
comparison utility called CMP, and two commands 
called BINEX and EXBIN which convert a file to and 
from Motorola standard S-Record format. DCHECK, the 
program which checks disk structure, now seems to 
work correctly, and DSAVE, the command which 
constructs a procedure file to copy groups of files, 
has been substantially enhanced, but Level Two users 
will have to continue to live with nunierlc error 
messages. A command called PRINTERR, which Is 
supposed to instruct the operating system to use 
text error messages, wasn't on my distribution disk. 



An Important new feature In OS-9 Is support for 
X0N/X0FF. The ASCII character set Includes 32 
special codes such as backspace ($08) and escape 
($1B> which don't generally represent printable 
characters, but still have defined meanings. X0N 
and X0FF are among the more useful of these special 
codes. If, for Instance, you have a terminal which 
usually runs at 19. 2KB, but can only accept Input at 
about 200 characters per second when It Is In Insert 
mode, It would be nice to be able to constantly 
adjust the speed at which the computer Is 
transmitting to match the speed at which the 
terminal can receive. In general you can't do that, 
but often It Is sufficient to be able to tell the 

W Micro Journal 



computer to "hold it," and "go ahead." If the 
computer can deaf with X0M/X0FF protocol, It will 
"hold It" whenever It receives an X0FF r and "go 
ahead" whenever It receives an X0N. There are quite 
a few terminals and printers around which run much 
better when they are attached to a computer which 
supports X0N/X0FF. It Is Interesting to note that 
X0FF (often called 0C3) Is entered as <CTRL>S, and 
X0N (DC1) Is <CTRL>0. In order to use this protocol 
you've got to find some character other than <CTRL>0 
to use as the "quit 11 character. 1 wonder whether 
Frank Hogg Is going to be able to adjust DynaStar so 
It can live without <CTRL>Q and <CTRL>S. 

One of the first things I do with a new version 
of OS-9 Is put together a new bootstrap. There Is 
nothing really wrong with the bootstrap that comes 
with the system, but 1 have my own Device 
Descriptors and Drivers, and even If I didn't need 
to, I probably would want to re-generate the 
bootstrap just on the principle of the thing. The 
modules In the bootstrap are automatical ly loaded 
when the system Is booted, packed efficiently Into 
memory, and made permanent. It sounds as though, If 
you have enough memory, It would be a good Idea to 
Include In the bootstrap file all the modules you 
would like permanently In memory. Don't do Itl 
Modules In the boot file are not only permanently In 
storage, they are also permanently attached to the 
other programs In the boot. Say you put a P-Code 
Interpreter In the bootstrap - when you link to that 
module In order to use It, you drag everything else 
In the bootstrap along with It. If you have a 48K 
bootstrap you would only be able to run programs 
which use up to about T2K total. Modules you expect 
to Mnk to should not be Included In the bootstrap. 
If you Include a utility command such as COPY, you 
may find that you can only use a relatively small 
amount of memory with COPY. The best way to handle 
commonly used commands Is to merge Just less than 
some small multiple of 4K of them Into a utilities 
file and load It using a LOAD command In the startup 
file. Since my system allocates memory In blocks of 
4K, small programs like COPY and PVID only waste 
memory If they are loaded by themselves. By 
collecting groups of programs together you use 
memory more efficiently, essentially keeping two or 
more programs In the space normally allocated to 
one. If your version of OS-9 allocates memory In 
different sized hunks, the size of the group of 
programs should be changed to reflect the new 
constraints. Users of Level One systems don't have 
to worry about any of this stuff. 

The first time I generated a new bootstrap was 
a little bit Intimidating. It Is Important to 
realize that, provided you are marginally careful 
(don't spill chocolate milk on an Important disk, 
etc.), the worst you can do Is waste your time. If 
you don't have a lot of memory the chance to*remove 
unused device descriptors from the bootstrap may be 
worth the trouble Involved In running 0S9GEN. If 
you want to change any modules which are In the 
bootstrap {addresses In Device Descriptors for 
Instance), the cleanest way to do It Is to modify 
them them with DEBUG, save the modified modules, fix 
their CRC with VERIFY, and build a new bootstrap 
with the modified modules. A module must be saved 
on disk In order to be Included In the bootstrap. 
You should use the SAVE command to create files 
containing each module you might want In the new 
bootstrap. 8u I I d a file with the names of those 
files you want to combine Into the new bootstrap, 
and use that list of files as Input to 0S9GEN. 
Finally use DC0PY to copy all the other files on 
your system disk over to the new one. 

I have many files on my system disk that are 
not part of the OS-9 operating system. An Important 
part of Installing a new version of OS-9 which Is 
not mentioned In the manuals Is copying all the 

19 



noi-OS-9 files you need onto your new system disk. 
I have discovered an easy way to do this* I Imagine 
most of you OS-9 users already know this trick, but 
I wish someone had told me about It a year ago- By 
running DSAVE on your old system disk you can create 
a file containing a copy command for each of the 
files on your old system disk- If you add a B -x" as 
one of the first few lines In that file It won't 
quit If one of the commands falls- The copy 
commands for files that are already on the new disk 
will fall, but the procedure will proceed to the 
next command Instead of quitting. The result Is a 
disk with all the files you want on it. 

Most of the programming I do Is on machines 
with far more than 64K available to each program. 
It Is easy to get used to having effectively 
unlimited memory. The 6ft09 can only use 64K, but 
with the help of OS-9 Level Two (not Level One) It 
Is oosslble to use more memory than most people can 
afford. Over the next few months I expect to spend 
some time discussing various ways of doing this. 

One of the baste facilities In OS-9 (and most 
other sophisticated operating systems) Is called 
FORK. The effect of FORK Is to set a program up and 
start It running without interfering with the 
program wnlcf* FORKed It. Each FORKed program is 
called a Process or a Task. A process can run for 
all practical purposes at the same time as the 
program that FORKed It. Part of setting a process 
up Is finding enough rn^nory for It to run. In OS-9 
Level Two each process runs In Its own "address 
space".*, that Is, no user process shares any memory 
with any other process except by special 
arrangement. If you have enough memory, each process 
can occupy al I of Its 64K address space except a 
shred reserved for OS-9. 



I have been spending a lot of Mme writing a 
program which I call a "smart terminal" program. It 
started out as a program to allow me to communicate 
with a variety of computers without having to unhook 
my terminal from my computer, and fuss with 
half/full duplex. It just keeps growing. One thing 
I decided to do was Include a way of printing a 
screen full of data. You can't just stop everything 
and print the screen; It would take so long to print 
that the Input buffer from the modem would overflow, 
and at best data would be lost. A solution Is to 
use a FORKed process to print the screen. Once I 
realized that I could start a process to print the 
screen, I carried It a step farther and fixed things 
so I can ask to have lots of screens printed, start 
a process for each screen, and let them queue up for 
a chance at the printer while the process doing the 
smart terminal bit runs cheerfully along. At about 
8K per process (4K for the module and 4K for 
variable storage) the minimum allocation on my Level 
Two system, I can queue up about 20 screens In the 
200K I usually have available. Using the more 
efficient allocation of storage available under 
Level One I could probably have queued up about 10 
screens in a 56K system. 1 admit this Is a trivial 
example of the use of extended storage, but the 
point Is that this Is a simple example of the kind 
of thing you can do with extended storage. It is 
easiest to use multiple processes to get at lots of 
storage when you can spin off a task that can run In 
Isolation. Communicating between processes Is 
another problem, suitable for investigation In at 
least one future column. 




ttend the 2nd ANNUAL OS-9 USER'S SEMINAR 



AUG. 12, 13, 14, 15 

PRE-REGISTRATION ONLY 

Sharpen your knowledge and skills of 
OS-9 and high level languages at the 
2nd Annual OS-9 User's Seminar. More 
participants, more speakers, more 
hardware and software exhibits. Here's 
your chance to learn from the experts. 

Fee: $100 

Location: 

Marriott Hotel Des Moines. Iowa 

Pre-Register Now! 
Call 515-279-8844 or write: 




MICROWAR6 



Micro ware Systems Corporation 

[>0. Box 48o5 

Des Moines, Iowa 50304 




"68* Micro Journal 



MICRO WARE 
USER SEMINAR 



lacond Annual nicrovara Caar S*3l&ar 
Awouat 12-1S. 1»|> 

Tbia !■ a* o*ant you won't wAnt to alaa if you ui«, tall or ara 
iatarantod in tyatob* that yn RUt^ici 110* aoftwara. t»tt yaar'O 
Alczovaro caar aoonnor wai Alt Outatandina, iticcaaa. arvd tha ;f!3 

odltlon proanaaa to ba ovoa blfoar aoo dtittr. Tba 4-day want will 
too bald Auguot 12 t£ rough Aufuat IS at tha Doa Aoir.aa Harriott 
total. 

Thara trill bo tnforootlaa roundtabla taehnieal aaaaiora 
CO* or 104 alooat ovary aapoct of t*a 6aai9,a bod ota ol Niccowara 
OOftoara. At toota aoaalono yoo cui beao qvaatior-.a to tfco mcro*art 
atazt ooobaca oho daalonod aach proof**, Many artofldtvt of latt 
yaar'a ininir rao*rktd that tbo opportunity to otat aod trad* ntxat 
oich otbar <09t waar aod« tha aaaizvoz a vory lapctiant aiponanca 
for tooa. 

Too will alao oat a pttvio* of rtlcrowara'a aacitinc, now fOOOt 
aoftwara product* plua d»A0natrationa oi nav (909 toft* ara. 

A blgo*r a50 bottar Sihlbit Arao "til hava display booth* froo 
many liadlnfl. oupplioia of Ol-t ca*p*tibJ* fcorOvatt ar.fi ooftvaro. 
Tfcalf fapraaantttivaa will ha avallaota to anr"*r your q.vationa. 
Ttiii will bo a oolcan opportunity to aaa and cor para what's now in 
conputos ayataoa, dlat and atoraoa davicas* and application aoftwara 
for 0S<-». 

A btjffat olnoar la plannad for Friday. Aoouat iZtb. and a 
brunch «111 ba hold tha aomino. of Auguat 14th. OVaat apoanaxa will 
ba xaaturod it bo*A avanta. Fart of tha avaning of AuO/titt 13tS> baa 
baan aat aoido for a floating of tha Of-l Uaar Groci. 

bon't oil* thlft CMnca to incraaia your incyltdoa and lUl) n 
tha lataat in oiccccoaptiar aoftwara tacbnology - ra?v»ttr for tha 
n;crov«r« Uaar faolnar today | 



CtWOWL IPTTDWWTICH AAOC? THE 
iVCUWD AAATAt MCKMAMK JIC» IP^&AJt 



dciiDOtoK or lormi 

ntlOAT. AJCDtT 12 
■ooiatxationi toon to S»«0 PP 
Ksblbit lAll opom at toon 
Cocktail Aocaptibm ItJO W 
Mffat Planar; ?iJ0 W 

•ATCIDAy* AVQDtT 19 

do* mora i »i00 am to liOO pm 

Ctbitit loll Oponi tiOO AH ta }i00 PA 

Oooi Croop Hoatiaajr 4*10 9m 

AABatocturaia loopltolity tultaa loqlnt liOO M 

ItCWAT, A0QC17 U 

bfjncr: lliOO AK 

ioainom l=flo Pfl to Si Do ph 

titibit loll Opont ltOO HI to CtOO Ml 

HO***?. AXCTtT IS 

opan siaevation (optioool) feCo af to Mo«n 

Mlcto«ar« OPon lout* liOO M to SiDS T* 



baa Aoinaa Marriott total. 
Talaphont S1J-J45-SJ0O 



70C Crand Art., &aa noinaa. IA S03CI 



■ECISTJUTIOIf APB ifOl JTAATIO* frK«t 

Tou ajrjfT pra-raolatar I T*a ooat La HOC por par ton. which Includaat 
P«c«ptl0n ond luffot Olfinoi On Ftifiav avanm^, tuition for oil 
a«a»l«na. oad tht broneh on lunday. Flaaaa fill oot tha anclooad 
zaa;atration «nd roturn it w*«n your choc* no rotor tftao July 13» 
>*•>. forr/i no Pot 10 coapony porchaa* oroara cart ba acc*p«*d. 

ACCOmUTIOttd 

Mlcrowara boa arronood a apoclal looo) rata with tba Aarriott total 
of althar U2 alngla or l?2 dooblo OOCvponCy por olfbt. TO obtoln 
toio rata, plaaaa roturn tha oocloaod card diroctly to tha total aa 
•arly aa poaalbl*. If yO" oft outaid* tot t.t* yog c*n pbon* or 
talox too noaraat Aarriott Intamat lonal Ataarvatlon Cantara to a«k« 

yoor raoarvationa. ba aura to apacify that your raaarvatioo to for 
tna nictowata Ooor loolnar *n otfiar to obtain tha asocial rataa. 

Marriott Int a r national aaaorvation Co&taia 

r 101) ISf-1521 Talaa 2«<JI 
DAT, 100111 31-10-*: Tolao <1<02» 
1VIO) <6j) 315720S Toloi J2337* 

2b tha ooant it# total to fully booaod by tba tio« you ***■ your 
raoorvation. mIctowot* cart aaaitt yoo with raaacvationa at otbor 
noarby ho tola, 

TSUVtLi 

Doa torno" I* MffH by tba lollowlna alillnaor goitad. "», 
rtonctarr Piara. "O^ii. ava. vt nit oidwaat, o:th diroct flifbta 
froa Cfclcooo, Donoor, At. booio. Hani City, Ao« Tor*, artd Uoa 
Anoalaa. HoaoBOar that oony alrllnaa offar I oh at antt ally roducad 
fataa if raaaroationa ara a>oda at ltaat a oontn 10 adtanca. 

If TQtr we CCtaiiooa. 

If «i can bo of aaaiatanca in any vgy plaaaa contact Jaanna Kaplan 
at Mlcrooara, talaphona 91S-2TI-0044 or talax 010>520-2S35. 



W Micro Journal 



OS 9 MAXIMUM 
EFFICIENC Y 

or 
Getting More Bang For Your Buck 



Paul Burega 
1 Pteasarif Bay 
Winnipeg, Manitoba 
Canada R2K 0C9 
204-339-3309 

0S9 Is an excellent operotlng system- It has properties 
which rival large systams In ease of use and performance; 
e.g. 1/0 redirection, which allows changing the Input or 
output of a terminal to another terminal, printer, or 
disk, and multiple tasking, enabling several programs to 
run concurrently (Including several terminals with people 
on each of thetn, giving time-sharing). 

Like the big systems, 0S9 can be M tuned M to provide 
maximum performance. This article describes several 
ways of customizing 0S9 Level 1 and Level II to your 
particular environment. By customizing, 1 am referring 
to Including new device aescriptors for terminals, 
modems, printers, and disk drives. For example, do you 
know that your dlsfc drives probably can seek faster than 
0S° is currently running them. Would you like to change 
the attributes of the ACIA controlling your terminal or 
printer, change the parity, stop bits, or divide ratio; 
or even add another disk drive or terminal descriptor. 
These and other items wMI be discussed and examples 
given so that you may modify these. We will also look at 
netting the maximum use of memory modules, one of the 
best ideas Mlcrowere could have put Into 0S9. 

0S9 was specifically designed for the sma ll sys tem- Small 
systems generally have limited amounts of memory (56K for 
Level I, 1024K for Level II). To cope with the small 
amount of memory, Mlcroware designed 0S9 to make 
maximum use of memory. 0S9 requires all executing 
programs to reside in iremory during execution. It does 
not perform "swapping" of memory to disk or "demand 
paging" wheretyy the operating system mows parts of your 
program between main memory and disk as needed* 0S9 
will nowever dynamically allocate memory to programs which 
are called (thru the shell, or thru BAS1C09 "run" 
command). For example, when you say LIST FILE, 0S9 
automatically loads the program named LIST Into memory 
and starts to execute It. LIST will stay In memory until 
it Is finished executing, and will then be deleted from 
memory. 

However, for commands which are frequently accessed, 
many times the searching of the disk directory and 
loading of the file take longer than running the program. 
It would be much more efficient to toad the module Into 
memory where It will be instantly available. This reduces 
disk accesses and the time needed for a trivial command. 
Consider the command which prints out the date and 
time. It takes longer to load this program than ft does 
to print the date and time. 

It Is possible to "LOAD DATE" Into memory, and repeatedly 
call it without the need for any disk access- This can 
be Cane with many of the frequently used commands such 
as DEL, RENAME, LIST, LINK, LOAD, DATE, MAKDIR, FREE, 
MFREE, MDIR, DIR, etc. 

There are two problems with this. As this list of 
frequently used progr s grows, it takes longer to load 
them In manually* One can put the LOADs In the STARTUP 
file, so they will be executed upon booting. A word of 
caution: the first file loaded must be the LOAD command. 
If it is not, then for each LOAD command, the directory 
must be searched for the LOAD ccemand, then searched 
for the actual command to be loaded. Thus loading 10 
files would require searching the CMOS directory 20 
times!. If LOAD Is loaded first, the number of searches 
Is then reduced to 10. 

The second problem with this approach Is that there is a 
minimum amount of memory which must be allocated to each 

frogram. In 0S9 Leiel I. that amount Ts 256 bytes, while 
n Level II, It Is 2K or 4K bytes- Clearly, loading in a 35 
byte routine will waste 230 bytes In Level I, and 
essentially 2K or 4K In Level II. For large programs this 
Is not a problem. Consider BaslcOQ, which Is over 20K 
long i It does not matter that the last 200 bytes are 
not being used, because 20K Is. But, for the small 
routines In the CMOS directory, the amount of space 
wasted Is In most cases greater than the amount of 
space used. To give you a concrete example, try loading 
In B routines, such as LIST, LOAD, MERGE, DEL, LINK^ 

21 



COPT, SLEEP, ECHO, tou will see that 2K of memory is 
being used up In Level 1. t6K or 32K Is being used up fn 
LeveT f I. Quite clearly, these 8 commands really only need 
a few hundred byteslll 

Other articles have mentioned burning an EPROM with 
several utilities 1 rt It, I originally did this, managing to 
Include 16 commands Into a 2K rom. But required several 
days typing In the hex codes for these commands, and 
checking tlieffl* I have no EPROM programmer software 
which runs under 0S9, This does work quit© well. It Is 
now possible to boot quickly, as 0S9 realizes that these 
routines are In ROM. As a matter of fact, since they 
are now In ROM, there Is no need for them on the disk. 
Accordingly, I deleted them from my boot disk. BUT NOT 
FROM THE ORIGINAL 0S9 DISK, OR THE BACKUP OF IT. 
Remember, always have a backup of your boot disk before 
you attempt fo do something as drastic as delete 
commands or modify your startup or boot file. 

While the EPROM route works, ft Is still not optimal 
because: 

1 - It takes a long time to burn the EPROM 

2 - If Mlcroware updates any commands, you must then 

burn a new EPROM. 

What then Is the best way? What fs really required Is for 
all these small commands to be loaded when you boot, not 
from the STARTUP file, as this takes too long, but from 
the boot file, GS9BQQT. This may not seem too easy, 
because if you load the necessary files, then do a 
COBBLER (Level II, none of these commands are saved. 
The answer, however, Is found In the documentation to 
theOS9GEN utility- The function of 0S9GEN Is to "make a 
copy of an existing boot file, to add modules to an 
existing boot file, or to create an entirely new boot 
file". Now users of Level I will say, but ft states "On 
0S9 Level One systems, the •cobbler 1 command is usually a 
convenient way to make an exact copy of the existing 
boot file". Note that It states ^exacf copy". What we 
wish to do Is "add modules to an existing Boot file". I 
am not surprised that Mlcroware did not document what I 
am about to present. It took me a long time to see 
this, but once I did, I was amazed at the results* Here 
then r Is a step-by-step approach to create a new, Lever 
I boot disk, wl+h many utilities loaded at boot time, with 
each utility taking up exactly the required amount of 
memory and no more. Level II users, be patient as some 
of this Is relevant, and the other requirements are 
explained later In the article. 

Required Items needed before beginning this undertaking 
are: 

1 - a freshly formatted 0S9 disk 

2 - a OIR X E listing, to give all the commands and their 
length. 

3 - about 10-20 minutes of your tJme. 

Place the freshly formatted disk In /Dl and your normal 
boot disk In /DO. Next, on the DIR listing, check the 
commands you will like permanently In memory. (1 settled 
for all commands under 200 hex long, or which were 
frequently used such as FREE, TMODE, LOGON). With that 
list In hand, enter the following sequence of commands, 
f list 71_ for Illustration purposes. I will Include the 
Commands LOAD, LIST LIW, LOGIN, TMOOE, DA1E, TSMON. 
You are free to use which ever you wish, 

0S9: os9gen /dl 

/d0/os9boot 

/dO/cmds/load 

/dO/cmds/llst 

/dO/cmds/llnk 

/dO/cmds/logln 

/dO/cmds/tmode 

/dO/cmds/date 

/dO/cmds/tsmon 

(ESC key, or whatever EOF Is set to) 

0S9: 

fllst 11 

Once the 0S9 prompt returns, the disk In drive 1 </dl) Is 
ready for booting. It needs the CMOS directory, SYS 
directory, a STARTUP file, and perhaps a DEFS directory . 
Any of the commands Included during the 0S9GEN are not 
needed on tills new disk. I personally use the DCOPYS 
procedure given In the July, 1982 Issue of 68' Micro 
Journal (p. 13). Tills also requires a routine labeled 
FIXS, which was In the May. 1982 Issue of 68' Micro 
Journal <p.16J. I have modified It to run quTckJy by 
adding a #40 to the copy commands passed to the shell. 
When fn BAS1C09 with DCOPYS and FIXS loaded, do a 
SMFREE, and see now many pages are left free. The more 
that are contiguous, the faster the copy will proceed. I 
chose 40 paqes as this used up almost ail the r**+ nf mv 

22 



available memory. You can release some of BASIC09's 
extra memory by using the MEM command. You could say 
MEM 2000 or less, and that will return some of the memory 
to 0S9. You wIM note that I also do a LOAD on the COPY 
command, so that It stays resident for the entire use of 
the directory copy, then UNLINK It at the end. 1 
personally chose the following commands to Include at 
boot time: ECHO, DEL. LINK, MAK0 1 R, LOAD, UNLINK, SLEEP, 
LIST, TSMON, COPY, D I SPL AY. 13ATE, BUILD, MERGE, 
PRfNTERR, SAVE, DIR, f*>IR, MFREE, PROCS, FREE, RENANC, 
7W0DC, VEfflFY, DUMP, LOGIN. 

Note that I no longer have all those commands on my 
current boot disk. Now with few commands left In the 
CMOS directory, I have free space, a much needed 
resource on my single-sided, double-density disks. 
However, I still haw my original 0S9 disk, and a second 
copy of my old boot disk, *both of which have these 
commands on them. Note that the only way to delete one 
of the commands from the boot file. Is to remake the 
boot file from the original 0S9B00T. However, new 
versions of fHes may be Included at the beginning, before 
the current 0S9B00T, then a new 0S9GEN. but this will 
waste some space. For small commands, or for new device 
descriptors, this does not make much difference. With 
this new boot disk, the boot process should be very fast 
and your startup file may shrink In size. My new startup 
consists of: 

SETIME 83 

DATE T 

ECHO 0S9 Level I successfully booted. 

Once you have made all the directories, and copied the 
necessary files, you are ready to try this new boot disk. 
Put the disk In /d0 and hit reset. 0S9 should come back 
quickly, with much less disk activity needed for 
Initialization* Now typeMDIR. Note how quickly you get 
a response (assuming you Included It tn the commands In 
the boot). Note how many commands are sitting there to 
give you Instant response. No need to waft for disk 
delays. Now thats speed!!! This Is where 0S9 really 
shines. The other 6809 operating systems do not really 
provide this abilHy to have all these modules present la+ 
least nof In a relocatable sense). Now do an MFREE, the 
amount of free memory will be less than you are used to, 
but you have all these extra commands sitting there, 
which now you will (hopefully) use more often- Ifyou had 

frevlously LOADed these files, you will notice a net gain 
n memory. It certainly Is nice that 0S9 contains these 
options. I found that these commands require about 8k 
of memory. Since I used to load most of these with LOAD, 
there Is not that much more memory being used. I feel 
that the Increase In speed outweighs the memory lost. 
With memory getting cheaper. It Is better to utilize this 
fully, and get that lightning speed from the operating 
system. "Sure beats the pan-fs off all those other 
systems"!! 

Some Notes on this Level I conversion: 

The new disk Is required because the boot program must 
be contiguous on the disk. It cannot be scattered 
across tTie free space of the disk like a norma! file. 
Using a new disk also ensures that you ke the old disk 
as a security backup. Also, using a new disk ensures 
the the file OS9B0OT Is the first file on the disk, thus 
the disk does not have to seek very far to find the 
boot. 

If you wish to change the boot program, you can make a 
new boot on this new disk, as all the remaining space will 
be contiguous after the files are copied. You can check 
this by using the FREE command. If the largest block 
reported Is the same size as the amount of free space, 
then there Is only one piece of free space. Don't worry 
If It Is not, as long as it Is within a few sectors. If 1 + 
Is not contiguous, then 0S9GEN will give an error 
message saying thai you will not be able to boot from 
this disk. 00 NOT Despair. Rename OS9B0OT to xxx and 
recall 0S9GEN providing there still Is enough free space 
left on the dfsk* If so, then this 0S9GEN may work, and 
then delete the xxx file. You may have to rename the file 
TEMPB00T to a dummy name as well. If you still hava 
problems, then you will be best off formatting a new disk, 
and trying again* But, If you J ust want to add more 
commands to the boot, you can use the modified OS9B0OT 
file, which has some extra commands already In It, and do 
not re-Include those files again. Or, you can go back to 
the original 0S9B00T file, and re-specify all the flies 
wanted. 

Notes for 0S9 Level II 



Level II users should not encounter all the troubles of 
Level I users have* Level II supports loading files which 
contain a number of routines, and It w 111 load them 

'68' Micro Journal 



contiguously. But, again we find the fragmentation 
problem. If your version of Level II uses 2K or 4K blocks, 
then make sure the flies you load are each just under ?K 
or 4K In size- If the/ ore just over 2K or 4K (depending 
on your particular page size), then you wilt be wasting 
memory. Smoke Signal systems use 4K page sizes, and \ 
found that It Is possible to group a set of commands so 
that they ore just slightly under 4K in length CEXX or 
FXX In length). It Is better to make a number of smaller 
files than to load one large one. If a program requests 
one of the programs in a block. Its 64K address space 
will lose the amount of memory equal to the size of the 
btock(s) of memory containing that program. For 
example, If you decided to merge a number of commands 
Into a 9K file, 0S9 would use 12K to store It once loaded. 
Now. when a program links to one of those programs, It 
would lose the ability to refer to 12K of Its 64K memory, 
since 12K of the memory It could see would be taken up so 
that It could "see** that program. However, If fhat 
program was In a block, just under 4K long, then only 4K 
out of the 64K would be used up. Note that ff you Just 
load a 50 byte routine. It will also take up 4K, so it fs 
best to merge some utilities. It Is best to merge 
utilities which may be used together, so that If both ore 
needed concurrently, then only 4K will need to be used. 

How do you create these files to load. Through the use 
of the MERGE command. Just enter: 

0S9: chd /dO/cmds 

0S9: merge list link tsmon login makdlr rename del dlr 
mdlr >utlll 

0S9: merge rename sleep build copy attr procs free 
mfree >utll2 

etc. 

Check the length of the files to ensure that they do not 
go over OFFF using the E attribute of the DIR command. 
Note that merge does not set the execute bits of the 
output file (In fhU case UTIL1, UTIL2). To enable 0S9 to 
loaa these files, you must Issue the command: 

0S9: attr utili e pe 
Note that this only need be done once, and then will show 
up on the DIR E command. 

Next, you must modify your startup file to do LOADs on 
these files. The first few lines In your new startup file 
should be: 

LOAD UTILI 

LOAD UTIL2 
followed by the rest of your normal startup, except that 
you can now delete tne other loads which refer to 
programs already In the UTIL files. 

Which files should be Included In the UTIL flies. I 
Included the following: 

UTILI: 
attr, build, copy, date, del, dlr, display, dump, echo, 
free 

link, list, makdlr, merge, rename ** total length F97 

UTIL2: 
login, mdlr, mfree, procs, setlme, sleep, tee, tmode, 
tsmon, 

unlink ** total length FA2 



UTIL3: 
save, verify, version 



total length 46E 



However, two Important files have been omitted. These 
ore the commands LOAD and SHELL. It seemed a pity to 
use up 4K just for a 50 byte LOAD, while SHELL Is around 
1K. f decided to put both In the 0S9B00T file using the 
above procedure for 0S9GEN. I found that this freed up 
I2K on the system. Now while memory Is getting cheaper, 
most Level fl users do not have 1024K Installed In their 
machine, perhaps 128K or 192K. The extra 12K or 16K still 
makes a difference (Beslc09 will almost fit In the new 
free space!) . 

Once you follow the rest of the Instructions for copying 
over to a new disk the remaining commands under the 
CMOS directory, as well as SYS and DEFS, and make the 
new startup file such as: 

load utili 

load ut1l2 

load utl!3 

setlme 83 

date t 

tsmon /tl & 

echo 0S9 Level II system Initialized 

Then, go and boot with this new disk. You will be amazed 



at the taster boot which does less disk seeking* You 
will also be able to Issue most commands In the OS^T manual 
without reading them In from disk. This will really 
Impress people who ere used to large systems, especially 
If you let Them LOGIN on another terminal, and you 
simultaneously execute programs. Try doing a MDIR E. 
You will find that the commands will now be nicely 
clustered In 4K pages, and will be contiguous In those 4K 
blocks. Enter WFREE. See how much more of that 
valuable memory you have available. 

By spending time customizing your copy of 0S9, you are 
able to greatly Increase the speed of execution of 
various functions. You ore also able to reclaim varying 
amounts of memory, and get more use out of your system * 
I had spent many we s Dang I rig my head against the wall 
trying to accomplish what I finally did. I feel that there 
must be others who are not familiar with what can be 
done to Improve 0S9* You may figure that It may not apply 
to you, or that It may not be worth the effort, buT T 
assure you that it Is worth the effort to get the system 
to work quicker and more smoothly. 

If you have ever worked with larger systems, with fast 
hard disks, you probably get annoyed sometimes at your 
slow 5 Inch floppies. The methoa presented adds That 
extra oomph to your system, and you may decide that It 
appears as if you nave DMA hard disks on your system. 



Modifying Device Descriptors In 0S9 



If you are like me, you find that your version of 0S9 does 
not run the disk stepper motor at the fastest rate that 
It can handle* This Is especially true If you have several 
drives, each of them different In this respect. Your 
drive stepping speed Is probably set to the slowest so 
that all your drives will work, or perhaps the Initializer 
byte for the ACIA on term or p1 Is not what you would like 
It to be. You may wish to change the address of P.PIj 
Tl, or even creafe another port, or disk drive. This 
article will cover all this using several approaches, for 
both Level I and Level II. 

When I first obtained 0S9 for my system, I was very 
frustrated because the disk stepper motors were 
running at the slowest speed. I nave two MPI drives 
which can run at 6ms step speed. 0S9 was running these 
at 30ms step speed. Operations, such as searching the 
disk directory, do a larae amount of disk seeks. By 
speeding up seek speed, the speed of these searches Is 
enhanced. In Smoke Signal DOS, this function is 
accomplished through the use of the LUNCTL command 
which allows setting the seek speed as well as the type 
of drive (5" vs. 8", 40 vs. 80 track, etc.). 
Unfortunately, no such command exists under 0S9. No 
mention is given on how to change these functions other 
than the Tact that the device descriptor module 
contains a value for this (p. 6-B). 

I had purchased DEBUG, so I decided this was as good a 
time as any to try it out. I found that I could modify 
values In the device descriptor, and the drives starting 
seeking faster on seek operations. Then I thought, 
"What happens next time I boot". I COBBLERed a disk, so 
that It would contain the new stepping rates. When I 
attempted to boot the disk. It started the boot, then 
died. It took me some time to figure out that because I 
had modified the device descriptor, Its CRC was ho 
longer correct. That meant that 0S9 would not use the 
module after a boot. Good thing I had a backup disk to 
boot froml* 

The solution to this problem came after a tremendous 
amount of thought. Tne VERIFY command will update the 
CRC for a module. If you save the modified module to 
disk, update It to another file, then load that file: this 
method will not work, because If you attempt to load a 
file which already exists. It can only be replaced with a 
higher revision number* Go back Into DEBUG, and bump up 
the revision number of DO to 2 from 1. Then save, verify, 
use attr to set the execute bits, and you can now load 
these new disk descriptors. Each descriptor would be 
loaded on a 256 byte boundary! (where have we discussed 
this problem before)7 I had not yet figured out the 
0S9GEN approach, so for a time I had a number of LOAD 
statements In my startup file for the modified drives. I 
decided that If DEBUG can update bytes In a module, then 
It could also write In the correct module headers and 
trailers. This was getting easy! All I had to do was DUMP 
the verified modules to the printer t then use debug to 
change all the values In the module. Now I could COBBLER 
a new boot disk, and this disk would boot successfully. 



68 + Micro Journal 



23 



However, this approach Is not suitable with Level II , and 
will not readily create new device descriptors. What we 
realty need Is to create a copy of the descriptor we wish 
to modify on disk, then perform changes to that copy, 
and f Inafty perform an 0S9QEN to create a new bootstrap 
file to Incorporate these changes* The first part Is 
easy- As an example, let us modify II* We will change th* 
port address, as well as the default Initialization tc 
Include 2 stop bits Instead of one, with 8 data bits. 

First step Is to make a copy on disk. This Is done 
via the SAVE command* 

0S9: save tt 
This will create a copy of tl In the current data 
directory. 

Next we require a hardcopy dump of the descriptor, 
to ascertain what we will modify. 

0S9: dump tl >/p 
This creates a nicely formatted dump on the 
printer. 

Tl Is en SCF device. Page 7-6 of the 0S9 System 
Programmers Manual describes the locations of 
various function bytes. The port location Is not 
listed. This Is at offset SOE, which Is a 3 byte 
address (for extended addressing). Typically It will 
be the third byte which you wish to change, at 
offset $10. The ACIA Initialization value Is at 
offset $26. To get 8 data bits. 2 stop bits, divide 
by 64, the value Is $12 (taken fron a Motorola data 
sheet). Mlcroware states that It's a good Idea to 
Increase the revision level, as 0S9 keeps the module 
with the highest number. Most modules are at 
revision level I (bottom four bits In byte 7), Leave 
the top four bits alone !fl 

Now.we run program (given later on, entitled 
OISKCHNG) which will allow us to modify bytes In file 
Tl, which we created. This program allows changing 
only I byte at a time, so you must re-enter the file 
name each time If you have more than 1 change to 
make. Baslc09 allows entering hex data by 
preceding the data with a "$". Thus, the sequence 
of commands entered Is: (note: do not enter the 
comments on the right starting with rem, they ere 
lust to explain what Is going o In each section!) 

0S9: baslc09 

B: load dlskchng 

B: run 

FILE NAME tl 

ENTER BYTE TO CHANGE $07 rem: change 

revision level 

THE VALUE IS 81 

ENTER NEW VALUE $82 

THE VALUE IS 82 

FILE NAME tl 

ENTER BYTE TO CHANGE $10 rem: change 

port address 

THE VALUE IS E0 

ENTER NEW VALUE $e2 

NEW VALUE IS E2 

FILE NAME tl 

ENTER BYTE TO CHANGE $26 rem: change 

Initialization 

THE VALUE IS 15 

ENTER NEW VALUE $12 

THE VALUE IS $12 

FILE NANC (control Q to quit) 

B: bye 

059: 

File Tl has had changes made, and no longer Is a 
valid 0S9 module, and must be verified. 

0S9: verify u <tl >new.tl 

0S9: ettr new.tl e pe 
This command line tells the verify command to do an 
update (u). take the Input from tl, and write a new 
file called new.tl. new.tl will then contain a valid 
0S9 module. It can now be 0S9GENed Into a new 
boot file, or just loaded (since the revision number 
was updated, 0S9 will keep around the copy with the 
highest number). The attr marks the file as 
executable- 
Last step Is to create a new boot file (follow 
?rocedure given before for Including extra modules 
n the boot file). Note: the file name you wish to 
Include Is NEW.TI, not 11. If you Include Tl then 
the CRC will be Incorrect, and 059 will Ignore it. 

Modifying a Disk Descriptor 



seen a Level II manuel, as versions of Level II that I have 
seen, come with Level I manuals). There are several 
values which you might wish to change for each drive- 
One of them Is the seek speed (offset 114). A table Is 
given at the bottom of the page giving the step codes 
and their corresponding step speeds* Offset $13 
contains the drive number (In case you wish to make DO, 
drive 3 not a really good Idea ). This Is useful though 
If you wish to create another drive. All thet needs to 
be done to create another drive is to save a drive 
descriptor, say 00, then dump It to the printer as 
above. Note the locations of the character string «w, 
and modify It to be *D3" or whatever two character name 
you wish. To extend the length of the name requires 
reassembly of the descriptor (If you can create the 
source to It In the first place !), or much headaches If 
you try and modify the name yourself without assembling 
the table. To create new terminals, modify Tl by 
changing the name "Tl" and the po t address. Simple 
once you know how. Note well; character strings In 0$9 
have the high bit on in the lest character In the string, 
so that e^1 h Is $BI, not $31. Here then Is an example 
creating a new drive from DO, and Increasing the step 
rate. 



0S9: save dO 

0S9: dump dO >/p 

0S9: beslc09 

B: load dlskchng 

B: run 

FILE NAME dO 

ENTER LXATI0N $13 

number 

VALUE IS 

ENTER NEW VALUE 4 

VALUE IS 4 

FILE NAME dO 

ENTER LOCATION $14 

speed 

VALUE IS 

ENTER NEW VALUE 3 

6 ms 

VALUE IS 3 

FILE KWC dO 

ENTER LOCATION $22 

may change 

VALUE IS 80 

•TO" 

ENTER NEW VALUE $b4 
1*411 

VALUE IS B4 

FILE KATC (control Q) 

B: bye 

0S9: 



rem: change drive 
rem: from to 4 

rem: change step 
rem: fron 30 ms to 

rem: this value 
rem: econd byte of 

rem: change to 
rem: giving T)4" 



Again, verify must be done to create a valid module. If 
you only wish to change the stepping speed, then Just 
change the appropriate value (and perhaps the module 
revision number). Other bytes you may wish to change 
ore $16. media density (to allow 80 track drives to read 
40 track disks). Note that If you are using 80 track 
drives, then the double track density D '* should be set. 
This allows the software to read 40 track disks on 80 
track drives. You can also write 40 track disks, but 
there Is no guarantee that a 40 track drive will be able 
to correctly read all of the disk, as the 80 track heads 
write a much narrower band of data- It Is an advantage 
to be able to read 40 t ack disks on an 90 track drive. 
This feature Is especially useful for people who have a 
mix of 40 and 80 trock drives In the systems, or people 
who receive 40 track disks from others. WARNING: If you 
do not have this bit set and have 80 track drives, you 
will not be able to read those disks once the bit Is 
turned on. When the bit Is off, the disk has written on 
It Information which says It was created In a 40 track 
drive, with 80 tracks!. Hence, when you tell 0S9 that 
your drive Is 80 track, It will look at the disk see that 



it Is 40 track, and skip every other tracV. and of 
course will give seek errors. If you have two 80-treck 
drives, then It Is possible to fix up one drive to be 



Disk descriptors can be modified In a similar manner. 
For RBF descriptors, such as DO, refer to page 6-B In 
the OS-9 Level One System Programmer's Manuel (I have not 

24 



course will give seek errors- 

drives, then It Is possible to fix up < 

correct, format some new disks, ond then copy all your 

disks- Make sure you then fix up DO If It is 80 track, 

and create a new boor disk If necesse y- 

Another reason for setting this bit correctly, Is that If 
a disk written on an 80-track drive Is Inserted In a 40- 
treck drive, 0S9 will generate an error message (wrong 
type media). Another value to change for B0 track 
drives Is the 2 byte number at I17-SIS, which contains 
the default number of tracks for that drive, and location 
$19, which contains the number of heads for the drive 
(giving the number of surfaces). These bits ore used by 
the format utility to pick up a default disk type* Do noT 
modify bytes S 1 X - {20. Someone Intelligent provided 
values for these, and they should not be changed, except 
by a very knowledgeable person. 

68* Micro Journal 



0S9 users *IM become expert at customizing systems to 
their particular needs. I hope that some readers can 
use this Information, and perhaps discover an easier way 
of making the modifications I hove described. 



PROCEDURE dcopys 

0000 REM copy dlr files 

0011 REM space to copy- any other key to bypass 

00 3A RSM from July, 19B2 '6B' Micro 

0057 

0056 DIM cmdS:STRINGM261 

0064 DIM cSrSTRINGM) 

0070 DIMp:BTTE 

0077 TYPE rec- name: STRING 1291; mlsc:STRINGl33 

0092 DIM drec:rec 

0096 INPUT "from dlr > " p fd$ 

0OA£ INPUT *to dlr > " tdS 

OOBF SHELL "load copy 1 ' 

00CC CH0 td$ 

0001 PRINT "space to copy - any other key to bypass" 
00TC PRINT 

00FE 

00FF ON ERROR GOTO 10 
0105 

0106 OPEN #p,fd$:READHMR 

0112 WHILE N0T(E0F(#p» 00 

0110 5 REM read next dlr entry 

0136 GET #p. dree 

0140 IF LEFTt(drec.name,1»* " THEN 

0153 IF LEFTKdrec.nome.l )<>".* THEN 

0166 RUN flxsMrecname) 

0173 cn.d$»"copy "+f d$+"/"+drec . name*" 
'Hdrec.nameV* #40" 

01 A0 PRINT cmd$; " "; 

OtAA GET #0,c$ 

01B3 PRINT 

01B5 \F c$-" " THEN 

0IC2 SHELL cmdS 

0IC7 ENDIF 

0IC9 ENDIF 

0IC8 ENDIF 

OICO ENDwHILE 

01D1 CLOSE Ip 

01D7 SHELL •Wink copy" 

0IE6 BYE 

0IE8 10 REM error routine - bypass and try again 

0212 PRINT "error - "; ERR 

0220 GOTO 5 



PROCEDURE flxs 

0000 REM : this routine fixes up a string 

0023 REM : a string read In from the directory has the 
6th bit 

004F REM : turned on In the last character to signify 
end of string 

0096 REM : baslc09 signifies the end of a string *lth 
hex FF 

00CE REM : this routine fixes up the string to end In 
255 decimal K y 

0112 PARAM x(29):BYTE 

01 IE 0IM 1: INTEGER 
0125 1-0 

01 2C LOOP 
01 2E l-F+1 

0139 EXITIF x(l»126 THEN 
0146 xO)«x<l>-126 
015A x<J+1l«255 
0166 EN0EXIT 

016C EXITIF 1>27 THEN EN0EXIT 
01 7B EN0LO0P 
017F END 

PROCEDURE dlskchng 

0000 REM program to change by es In a disk file 

0029 REM by Paul Burege 

003A D1Mj>ath:BYTE; name: STRING! 501; numberrBYTE 

0054 IFPUT "file name *>ame 

0066 OPEN f path, name :0P0AT£ 

0072 WUT Snter byte to change ",ptr 

008F SEEK #peth,ptr 

0099 GCT Ipeth.number 

0OA3 PRINT USING "s20,h2"," he value ls",nu*ber 

00C1 SEEK §jm th,p tr 

00C8 IfPUT Center new value ", number 

00E3 PUT #path t number 

I0ED PRINT USING "s20,h2",*new value ls",number 

108 CLOSE #path 

1" ENOLOOP 



STRUCTURED 
ASSEMBLE MACHOS 



Yvti Ltcltrc 
520 Undrtvillt «1A 
Vtrdun H3E lB4 
Out btc , Canada. 



STRUCTURED 
THROUGH 



MACROS 



I'm turt a number of vou read with 
mom* interest. a ytar ago, Greg Walker's 
articles in BYTE about a structured 
a sss>mb | ffjr for the bB09. And thought, as 1 
did: wouldn't that be nice... if I under- 
stood how it works, or if it was written 
for the TSC rather than the Motorola 
assembler ' 

The advantages would be obvious: 
cleaner and clearer structures in medium- 
size and long programs* easier writing, 
easier debugging; better modularity. My 
problem was that I had never really worked 
with macros or conditipna) assembl y* and 
just looking at the Walker listings made 
me >^mry much aware of how hard a job it 
might be. 

Walker's method is one that is used 
sometimes on larger systems* but rather 
r^rm on micros: coding a language, or in 
this case language extensions, in assem- 
bler macros. It is similar to the 
technique used by H.L.Harkness to create 
Rload ('68 Hicro sept-nov I9B1). 

It took me some six months to make up 
my mind* then sometime last summer, as I 
planned to embark on some fairly fancy 
assembly programming projects, I figured 1 
might save more time tackling this task 
first and thus giving myself a powerful 
tool to help solve the other problems. It 
did take quite a bit of work (so much that 
I'm not sure I saved time overall), but it 
was extremely instructive... and now I 
wonder how I could do without structured 
assembly for most of what I write. 

For those who haven't seen the Walker 
articles* 1*11 give here a qu i c k r un - 
down on macros and conditional*, with both 
their advantages and inconvenients. 
Experienced assembler hackers and those 
who have read Walker may skip the next two 
sections. 

MACROS 

Macros »rm blocks of instructions 
given a name, somewhat like subroutines, 
except that each time they Arm called 
(just by writing their name in the 
program) v they Arm "expanded" or written 
again into the text. They* re good either 
for short series of instructions used 
often in a program* or for blocks that Arm 
not quite identical, but almost* from one 
use to the next. 

For instance, if you write an 
assembler program doing quite a bit of 
file juggling, you might write a "family 1 * 
of macros called OPEN* READ* WRITE and 
CLOSE to take care of the details of file 
access. Or if you use multiple precision 



'68' Micro Journal 



25 



arithmetic in a program, you could havi 
PLUS. MINUS, TIMES and DIVIDE macros 
taking car* of that. 

Macros arm usually defined at the 
beginning of the program, and after that 
they can be considered simply as new, more 
powerful or more complex, instructions of 
the assembler. Another good method <the 
one 1 use here) is to have a librery__ qf 
macro f i 1 es you can call through the LIB 
pseudo-instruction of your assembler. That 
way you won't have to rewrite the mame 
series of instructions each time you need 
them. 

On the other hand. the first times 
you use macros, it is hard to rmmmmhmr 
that they arm not oaMl, of_ the program , and 
arm not executed unltti they arm speci- 
fically called. They arm used at a ssembl y 
time . not at run time * Which at first can 
lead to a number of hard-to-track error*, 

Macro* can also have parameters, or 
arguments. Except that these parameters 
arm X \ tteral s . not value* or expressions. 
A macro parameter, in TSC format, is 
rm^mrrmd to in the body of the macro by an 
ampersand followed by a number from 1 to 9 
indicating the order of the parameter in 
the calling line. For instance* if a macro 
PLUS is called as 

PLUS VALUE, + ,D 

the expression &i will rm^mr to the ASCII 
string "VALUE". &2 will become "+" and Sc3 
will be "A" (which could as well represent 
tne letter M A H as the hex value 10 or the 
A register of the 6B09 ' ) . 

Another difficulty is that you can't 
use labelled lines inside a TSC macro: 
since each label will be "created" anew 
each time the macro is expanded on pass 
one of the assembler, it will generate a 
"multiply defined symbol" error. The only 
(not very useful) way to go around this is 
to give the macro new label names each 
time as parameters. 

CONDITIONAL ASSEMBLY 

1 had read about this in the TSC 
assembler manual and in Leventhal's book 
on the 6809, but I must admit I had not 
the least idea what it could be used for, 
except in a very limited way. That's 
because 1 didn't understand the difference 
between what happens to a program at 
assembly time and what happens to it at 
run time. 

So here we go: conditional assembly 
has no effect at al 1 on what happens when 
you run a program. Its influence ends as 
soon as the program is assembled into 
binary form. What it does is assemble the 
prQQr#ffl. or a program taction, differently 
in different circumstances according to a 
set of rules . One of its major uses is 
inside macros: a macro can be defined in 
various ways according to the parameters, 
or even to the number of parameters, 
passed on to it. This is the way I use 
conditional assembly in the present series 
of structured macros. 

But since conditional assembly is 
restricted to assembly time, values 
created by a run of the program cannot be 

26 



used to set the conditions* this is 
specially true of variables or of the 
contents of memory bytes, since there is 
no way you can know these in advance at 
assembly time. Thus if your conditional 
assembly dvpends on certain numerical 
limits that vary from one invocation to 
another. the only way to pass them on is 
through explicit expressions or pseudo- 
variables created by the assembler at 
assembly time. But since you can use 6QU 
on a symbol only once in a program, you 
have to use the SET pseudo-directive 
instead, which can be redefined at will. 

In practice, conditional assembly Is 
a very powerful technique, but it also has 
severe drawbacks: i t can make the code 
impossible to read and understand, and 
Introduce any number of weird bugs, often 
caused by a confusion between assembly 
time and run time behaviour. So I would 
tend to side with Lance Leventhal , whose 
advice about conditionals is "Don't use... 
unless you have to". 



LEVELS OF MACROS 

Let's now go into the Astruc family 
of macros itself. It is built in four 
levels: primitives. tests and code 
generation, stack control, and the 
structured macros themselves. Each level 
can and does call the preceding levels to 
execute part of its tasks. But as these 
will vary from one call to the next, I 
have to use conditional assembly a lot. 
which tends to obscure the listings and 
thus the role of each macro. 

This doesn't matter if you want to 
simply transcribe the macros and use them 
as such: the programmer only uses the last 
level in his programs, and does not need 
to ^now how they work. But if you want to 
change them, or add on to them* you had 
better know what you're getting into. So I 
shall describe briefly what each of the 
first three levels does. 

a) Pr mit tivll ! they do strictly low 
level short and simple tasks used by the 
higher level macros. LGT2T sets pseudo- 
variable BR1LG to or 1 according to 
whether the L parameter for long branching 
instructions is present. The others arm 
all concerned with stack managenwnt, about 
which more in a moment. 

b> Te stes and compares : they test and 
validate the various parameters of higher 
level macros, and generate assembly code 
accordingly. They check for instance that 
the registers and conditions rm^mrrmd to 
in the fourth level macros arm correct, 
and "write" into the program the needed 

conditional branching instructions, often 
leaving the adress field blank or filled 
with a dummy value, to be defined later in 
the process (the RP1LG pseudo-variable is 
used only for this). 

c> Stack control : to be able to nest 
assembly structures inside each other we 
need a stack to check at which level we 
arm and to hold values and addresses. But 
the conditional assembly format does not 
allow this, so we must simulate a stack 
using dummy variables. 

'68* Micro JournaJ 



Thim is probably the hardest part of 
the job of creating the structured macro 
family. First, you need simple and ativ to 

"" PUSH and PULL in f 1;rtic^ ons, to be 

called at the highest macro ltvfl, and to 
take car* automatically of stack managt- 
mtnt tasks. These havt only two possible 
parameters: an address, and the Q option 
indicating a more complete PUSH or PULL 
required by the multiple choice structure 
CASE OF. 

Then (and this Is a major difference 
from the Walker structured macros in BYTE) 
we have another macro, at the primitive 
level , EX9MAC, which is called every time 
by the P6SH and P6LL macros to determine 
at which level of the stack we ^rm. This 
has to be done "by hand", testing each 
possibility through a binary search, 
which makes EX9MAC probably the most 
c PfflO l ew of all the macros here. 

Finally, once the stack level is 
determined, the primitive P2SH or P2LL 
utility macros are called to effect the 
stack Manipulations themselves. There »rm 
two versions of each, the simple one. 
which acts on only one variable, and the 
p O H one, which acts on three. 

STRUCTURED ASSEMBLY 

The fourth level of macros is the one 
which transforms your standard TSC assem- 
bler into a qm«h -higher tfvfl U n q"*q«* 
without robbing you of any of its versa- 
tility and hardly any of its compactness. 
Instead of a structured macro, you can 
always use a "normal** compare and jump in 
any situation, but based on half a dozen 
programs, I figure that the extra code 
generated by the macros is n9>/T more than 
55£. » - and the extra running time is about 
nil: most of the unnecessary instructions 
never get executed anyway. 

Structured assembly has three main 
advantages: it gets you rid of all the 
confusing jumps and branches (conditional 
or not), thus making the program much more 
understandable and easier to debug *- in 
fact, I find that most of the time I save 
is in the debugging rather than the coding 
stage — and test; it eliminates the need 
for most line labels, since almost all the 
jumps srm generated directly by the 
macros! and it regroups the program parts 
into functional blocks in a much more 
logical way, so that program flow "ju»ps 
around** much less and is more obvious. 

As In any high-level programming 
language, you use the structured macros in 
two circumstances: when there is a choice 
to be made between two or more alter- 
natives, and when you need a loop repeated 
from zero to a number of times or until a 
certain condition is met. 

CHOICE STRUCTURES 

There ^rm two families of structured 
macros used for choosing. One, the IF 
family, serves for choices between two 
alternatives! the other, the CASE family, 
is used when there »rm more than two 
possibil 1 ties. 

The IF family holds five macros: 
three different forms of IF, the IFNOT 



(meaning ELSE) clause, and the IFEND macro 
indicating the limit of the scope of an IF 
structure. Why three IF forms? To take 
advantage of the variety of testing 
instructions on the 6909* and to optimize 
the resulting code. The IFRG form compares 
between an internal register and a value 
in memory, using equal /not-equal , greater- 
or -equal /smal ler, and greater/smal 1 er- 
or-equal tests. The IFTST form checks, 
using the TST instruction, a value held in 
memory or the A or 8 register, and 
branches accordingly. The IFCC form uses 
the status of the condition code register, 
which should already have been set, to 
make a choice. 

Each form of the IF macro can be 
followed by a block of code to be executed 
if the test is successful, an IFNOT 
clause, and another block of code to be 
executed x f the test i s not successful 
(the IFNOT part is optional). The end of 
the whole structure (which can be nested) 
is marked by a IFEMD macro. 

The CASE family has four macros, and 
allows for one of many blocks of code to 
be executed according to the result of an 
equal /not-equal test between an internal 
register and a value in memory. It also 
has an OTHER default case to take care of 
situations in which none of the tests 
succeed. Its end is marked by the ENDCASE 
macro. 

Note that the IF macros have the same 
form as in the Greg Walker BYTE articles, 
but they *r9 coded differently: they nest 
16 deep instead of 10, and the stack 
management is done not inside them but by 
a lower level group of macros. The CASE 
macros »rm new. . . and pretty useful 
especially where for instance a value or a 
character in the A register has to be 
tested for several possibilities. You will 
see typical uses of these forms in the 
1 i stings. 

LOOP STRUCTURES 

There »rm three loop structure 
macros, two adapted from Walker (WHILE... 

ENDWHILE and REPEAT UNTIL) * and a new 

one, a counting loop similar to the BASIC 
or Pascal FOR NEXT loops. The REPEAT loop 
is the simplest form: it generates a test- 
and-branch at the end of the block, 
without any overhead. The WHILE form is 
more complex, since it tests at the 
beginning of the block, and thus generates 
a conditional branch at the beginning and 
an absolute branch at the end. 

The FOR loop is the most complex, and 
often the most useful: it uses one of the 
internal 690<? registers as a counttr, 
which is incremented or decremented at 
each execution of the enclosed block of 
code, until it reaches a preset limit. If 
the increment (or decrement) is 1« the INC 
instruction is generated if possible, else 
the ADD or LEA instruction is used. For 
practical reasons, the initial value and 
limit »rm set at the beginning of the loop 
(where the test is made), but the incre- 
ment is defined at the «nd. as a parameter 
to the NEXT macro. 

All these structures can be nested 
inside each other up to 16 deep, the 
oseudo-stack taking care of the details. 



'68' Micro Journal 



27 



thum allowing tho programmer to concen- 
trate on the meaning rather than the 
mechanics of the whole program and its 
various sections. "Pretty-writing*' the 
code with indentations in Pascal or C 
fashion makes the architecture of the 
program much clearer, and the flow of 
control much easier to follow to the 
author himself. 

LI9TIN39 AND EXAMPLE 

You will find appended to this first 
the listings of the structured macros 
themselves, then a program example of 
their use in practice. To use the struc- 
tured macros, you copy them in a text file 
called ASTRUC.TXT, and when you write a 
program, put LIB ASTRUC at the beginning. 
You may then use any of the macros as you 
would other "natural" instructions of the 
assembler. 

Note that all 6809 addressing modes 
may be used as parameters to these macros 
(wherever An address is needed), and that 
the responsibility to force long branching 
through the L parameter rests with the 
programmer, although the macros will send 
out An error message if long branches ArQ 
needed but not present. More detailed 
information on the syntax is included in 
the listing comments before each macro. 

The rather bizarre labels chosen for 
the lower level macros and the pseudo- 
variables have no real meaning. I made 
them unusual enough so there would be 
little risk of conflict between them and 
any other labels the user could create in 
a structured assembly program. Thus P6LL 
and P6SH instead of PUSH and PULL, etc. 

The second listing is a short example 
of a structured assembly program, the 
SEARCH utility to look for a series of hex 



bytes in any FLEX fil 
Explanations of this 
in the comments lines 
listing. The last lis 
of the program (using 
the code generated 
If you compare the st 
the results, 1 think 
first that the struc 
easier to read and 
that i f you had coded 
"straight" assembler 
been shorter by more 
so. 



text or binary, 
program will be found 

and fields of the 

ting is a disassembly 

DYNAMITE) to show 

by the Astruc macros. 

ructured source and 

you'll have to admit 
tured form is much 
follow... and second 

the same program in 
, it wouldn't have 
than a dozen bytes or 



If you assemble the SEARCH program, 
you will notice that assembly takes quite 
a bit more time than you expect. That is 
the penalty you pay for using macros in a 
program. But it is usually more than 
adequately compensated for by the time you 
save coding and debugging the programs. 
Since the macros generate a lot of ORG 
instructions that will be reflected in the 
structure of the resulting binary file on 
the disk, I suggest one extra step to 
obtain simpler code: once your program is 
assembled, note its limits in memory, then 
dump it to memory using GET and save it 
using SAVE or SAVE. LOW. This will get you 
rid of all those ORG* and result in a file 
that loads much faster. 



* STRUCTURED ASSEMBLY MACROS 

* Yv»» Led ere. Sept amber 1982 

» Adapted and e*pand»d from Greg klalka 

* of Motorola (BYTE, nOv/det 17BI> 

* INTERNAL DUMMY VARIABLES 



0000 


ACP1L 


SET 


f 


F0i*« 


RP1LG 


SET 


*F0#* 


tfitW 


8R1LG 


SET 


f 


V%300 


RG2O0 


SET 


# 



• PRIMITIVES 



• TEST FOR LONG BRANCH 

LGT2T MACRO CL1 

IFC L.41 
BR1LG SET 1 

ELSE 
BR1LG SET 

ENOIF 

ENDfl 

• PUSH ON STACK 

• • ) Short case 

P2SH MACRO <lvl>,<addr 

SP1LS.1 SET *2 

LP1L41 SET BR1LG 
ENOM 



• b> Double cave 



P2SHQ 



MACRO 



SP1L&1 SET &2 

LP1LS.1 SET BR1LG 

RPlLlrl SET PG20D 

APIL41 SET AD2PL 
ENOM 

* PULL FROH STACK 

* a> Short case 



lvl>,<addr> 



P2LL 


MACRO <lvl> 




ORG SP1L41 


BRL2G 


SET LP I Li J 




ENOM 


• b) Double case 


P2LL0 


MACRO <tvl> 




ORG SP1L41 


BRL2G 


SET LPtLH 


RG2D0 


SET RP1LIJ 


AD2PL 


SET APIL41 




ENDfl 



OETtRMINE STACK LEVEL 
and execute macro 



EXVMAC MACRO 


<macro>,<addi 


IF 


ACPlLv^.23 


IF 


ACP1L<13, 11 


IF 


ACPIL<13,3 


IF 


ACPlL-13,2 


11 


16.S.2 


IF 


ACP1L.40 


4.1 


13.1.2 


IF 


ACP1L.38 


IF 


ACPlL-13,2 


41 


14,5.2 


IF 


ACPI L. 33 


III 


I3.fr? 


IF 


ACPIL.33 


IF 


ACP1L<11,3 


IF 


ACP1L-U.2 


• 1 


12. $.2 


IF 


ACP1L.29 


&1 


11,42 


IF 


ACP1L.27 


IF 


ACPiL*9,2 


41 


10. 12 


IF 


ACP1L.2* 


1<1 


7,42 


IF 


ACP1L.22 


IF 


ACP1L<3, 11 


IF 


ACP1L<7.3 


IF 


ACPlL-7,2 


11 


a,*2 


IF 


ACPIL.17 


41 


7,42 


IF 


ACPtr, 13 


IF 


ACP1L-3.2 



Sci 


6,*2 


IF 


ACP1L, 12 


41 


5.42 


IF 


ACP1L. 10 


IF 


ACP1L<3,5 


IF 


ACPJL~3,2 


41 


4*12 


IF 


ACP1L.A 


41 


3.42 


IF 


ACPIL.4 


IF 


ACPlL-1,2 


VI 


2.1(2 


IF 


ACP1L, 1 


41 


1.42 



* TESTS AND COMPARES 

* ■■■—■■■■»■■■■■■*■• 

* TEST FOR VACIOE PARAMETER 
PAT2T HACRO <par> 



26 



*68 T Micro Journal 





I^NC 


W,.5 




BNP4 


SET 









ERR 


• PARAMETER ERROR • 






EXITM 








IFC 


H.L.-3 




0f*>4 


SET 

ENDM 


1 




♦ GENERATE CASE INSTRUCTIONS 




G2NOD 


MACRO 


<rsq>,<addr> 






CNP11 


12 






IF 


eeiLG 






LBNE 


RPILG 






ELSE 








SHE 


* 






END IF 








ENDH 






• FIND 


CASE REGISTER 




CI NOD 


MACRO 


<addr> 






IF 


RGC0D>3,9 






IF 


RG20D-3.6 






IF 


RG20D-1 






G2NOD 


A, !•! 






ELSE 








G2NOD 


8, !•! 






END IF 








IF 


RG2QD, 10 






G2NOD 


0.11 






IF 


RG20D.B 






IF 


RG20D«6,6 






IF 


RGZOD-4 






G2N00 


0*11 






ELSE 








G2NOD 


X,U 






END IF 








IF 


RG20D, 1 






G2NOD 


v,H 






ENDM 






• GENERATE COMPARE 




0PT2T 


MACRO 


<cond>,<cond>,<cond> 






IFC 


1.1,1.2 




M0P 


SET 


1 






IFN 


6RILG 






M3 


* 






ELSE 








LBI-3 


RPILG 






ENDIF 








ELSE 








IFC 


1.1,1.3 




BNSP 


SET 


l 






IFN 


BR1LG 






B12 


• 






EL3E 








L812 


RPILG 






ENDIF 








F.NDIF 








ENDIF 








ENDM 






• FIND 


CORREC1 


TEST 




OPT5T 


MACRO 


<cond>,CTtCJ 




9N0P 


SET 









1FNC 


12., 6 






0PT2T 


1.1, PL, MI 






IF 


BN0P, 12 






0PT2T 


11,CC,CS 






IF 


6N0P, 10 






0PT2T 


ll.S/C,VB 






IF 


BN0P.0 






IFC 


12.T.2 






0PT2T 


ll.GT,LE 






IF 


8N0P,9 






OPT2T 


ll.EO.NE 






IF 


0N0P.3 






OPT2T 


t.l,B€tLT 






IF 


8N0P, 1 






ERR 


• ILLEGAL CONDITION 


11 




ENDM 






• VALIDATE RESIST** 




RGT3T 


MACRO 


<reg>,CCtNJ 




DNR3G 


SET 









IFC 


11, D, 4 






IFC 


1.1, S, 3 






IFC 


ll.U,2 






IFC 


H.X.l 






IFNC 


ll.Y.l 




0NR3O 


SET 


1 






IFNC 


1.2, C, 1 





BNBZG 



SET 


I-BNR3G 


IFNC 


12, M, 2 


IFC 


0.11,7 


SET 


6NR3G+BNR3G 


IF 


BNR3G, 3 


IFC 


11. A, 1 


IFNC 


11. B, 2 


SET 


1 


IF 


BNR3G.1 



• otf the A or B register or a uttnory byte 

• and sets ionfl flags accordingly. 

• Th« only accepted conditions «re EQ, NE, 

• LT and G€. 

• TYPICAL USE: IFTST A,LT 
» etc... 

IFTST 



• ILLEGAL REGISTER 11 • 



ENDM 



♦ STACK CONTROL 



• PUSH 



P6SM 
ACPIL 



MACRO 


<rtg>.<cond>, tL) 


PAT2T 


12 


IFN 


BNP4.6 


LGT2T 


13 


ROT3T 


11. c 


IFN 


BNR3G.3 


TST 


11 


0PT3T 


12. T 


P6SN 


•-1-BRILG 


ENDM 





<addr>,tO] 

ACPlL+l 

ACP1L<17,2 

• STACK OVERFLOW 



MACRO 

SET 

IF 

ERR 

EXITM 

IFC 12,0 

EX«?HAC P2SH0.ll 

ELSE 

EX<?MAC P2SH,11 

ENDIF 

ENDM 



• PULL 



• cJ On condition cod* rtquttr statu* 

• Supposes that the nesded test has 

• already been made, an* b*iti its choici 

• on the state o4 ona or ttvtril of tha 

• condition coda register flags. This is 

• tha general form, where all possible 

• conditions tw accepted. 

• TYPICAL USE: JSR FMS 

« IFCC NE.L 

» < error treatment > 

» I FEND 

• < execution contlnues> 



MACRO 

IF 

ERR 

EXITM 

IFC 



C03 

ACPIL, 2 

• STACK EMPTY 

11,0 



IFCC 



EX9MAC P2LLQ 
ELSE 

EX9MAC P2LL 
ENDIF 
ACPIL SET ACPlL-1 
ENDM 

♦ STRUCTURED MACRO- I NBT RUCTIONS 



• CONDITIONAL STRUCTURE 



MACRO 

PAT2T 

IFN 

LBT2T 

OPT5T 

P65M 

ENDM 



<cond>, CL1 

11 

BNP4.3 

12 

11 

#-l-BRll_6 



♦ END OF THE IF BLOCK 



I FEND 
NT4DR 



MACRO 

SET 

P6LL 

IFN 

IF 

ERR 

ELSE 



BRL2G 
(NT40R-«-l>>127 

♦ 'L* AFTER IF« 



• There are three possible conditional 

• instructions, according to the type 

• ai test flt^dt. But their syntax is similar, 

• their operation identical: i< the result 

• of the test is TRUE (nor rero>. the block 

• of code Immediately following is executed, 

• until the corresponding IFNOT or If END. 

• If IFNOT is present, the following block of code 

• is skipped until the corresponding 1FEND. 

• 14 the test result is FALSE (zero), the following 

• block of code is skipped until the corresponding 

• IFNOT or IFEND, and execution resumes there* 

• (NOTE: Use o4 unusual forms IFNDT and IFEND 

• Is forced because TSC macro assembler already 

• has ELSE and ENDIF mnemonics. > 

•a) On compare 

• Accepts logical operators EO, NE, GE. LT, 

• GT, LE with the same meaning as in the 60*9 

• assembler or 1R? FORTRAN IF instructions. 

• <reg> can be any of the processor registers 

• except DP, PC or CC. <addr> can use any of 

• the legal addressing modes of the 6609 

• (but »n Indexed address Including a comma, 

• plus or minus signs, should be in quotes). 

• Optional parammtmr L signals a long branch, 

• TYPICAL USE: IFRO B.NE, -0, *♦■ , L 

• <btock of code> 

• IFNOT 

• <block of code> 

• IFENO 

1FR6 



IFNOT 



MACRO 


<reg>,<cond>,<addr >, ID 


PAT2T 


13 


IFN 


9NP4.3 




LGr2T 14 




RGT3T 11 




CMPH 13 




0PT3T 12, C 




PeSN ♦-1-BR1LG 




ENDM 



• b> On A or B register or memory TST 

• Tafcei advantage of the 680* TST 

• instruction, whlck tests the content* 



FCb 


N?40R-*-l 


ENDIF 




ELSE 




FDB 


NT40R-«-2 


ENDIF 




ORG 


NT4DR 


ENDM 




rYPE CONSTRUCT 


MACRO 


CL1 


LGT2T 


11 


IF 


BR1LG 


L8RA 


RPILG 


ELSE 




BRA 


• 


ENDIF 




IFEND 




P6SH 


•-1-BR1LG 


enDm 





68' Micro *lournal 



29 



• LOOP STRUCTURES 

• e> TEST AT THE BEGINNING 

• R»p««t* a block of instructions am long 

• as the test ^ivti a TRUE r«tult, with the 
» same condition* as the tFRG itrueturs, 

• Teat ii mad v at the start, so that the 

• block of instruction* may not bo txtcutcd 

• at al 1. 

• TYPICAL USE; WHILE A.Ne.^.-U" 

• -block, of cod* 

• ENOWHILE 
WHILE 



• blocv or instruction* «*iay never b« 

• «r«coted. Not* tnat *or practical coding 

• reason*, tht initialisation and limit of 

• the rtqifttr Art set at the beginning, but 

• 'ho incrt*tnt or decrement is dtMnid 

• only at tho doit of the loop, 

• TYPICAL USE: FOR X, *5000. TEN 

• <bloek ot* codt> 

• NEXT *,-3 



MACRO 


<>eg>,<cond 


PAT2T 


13 


IF* 


BNP4.o 


IGT2T 


14 


SET 


• 


RGT3T 


11 


CMP11 


13 


UPT3T 


12. C 


P6SH 


♦-1-BR1LG.0 


END hi 





FOR 



A02PL 



♦ END OF WHILE LOOP 
ENDWMlLE MACRO 
NT4DR 



MACRO 


'reg>,<< 


PAT2T 


13 


I FN 


BWP4. II 


RGT3T 


11. M 


1FN 


BNR3G,9 


LGT2T 


14 


LDll 


12 


SET 


a 


cmpii 


13 


IF 


BR1LG 


LBHI 


RP1LG 


ELSE 




BH! 


a 


END IF 




PiSH 


•-2-BR11 


ENOH 





iin;,<a«K>,CL] 



SET 


• 


P6LL 





IFN 


BRL2G 


IF 


NT4DR-~1>127 


ERR 


•'L' AFTER WHILE 


ELSE 




FCB 


NT4Dff*1~* 


END IF 




ELSE 




FOB 


NT4DR+1-* 


END IF 




ORG 


NT4DR 


IFN 


fc**LZG 


BRA 


AD2PL 


ELSE 




LBwA 


AD2PL 


END IF 




ENDfl 





• END OF FOR LOOP 



• b> TEST AT THE END 

• Tho simoleat (and Uttttt> possible 

• loop structure, requires only a tomt 

• and branch instruction at tho end, 

• Follows tho samo rulos as tho WHILE 

• loop* but ♦or sr\ important exception; 

• condition is sot and tested at the end of 

• the block of code, so that the block autt 

• be executed at least once. The beginning 

• REPEAT pseudo- instruct ion takes only one 

• parameter, the optional L. 

• TYPICAL USE; REPEAT L 

• 'block of code> 

• UNTIL Y.GT,"S~- 



NT4DR 



REPEAT 


MACRO 


CL J 




LGT2T 


11 




P6SH 


• 




ENDM 




UNTIL 


MACRO 


<rffg>,<cond)i addr > 




PAT2T 


13 




IFN 


BNP4 , 1 9 


NT4DR 


SET 
P6LL 


a 


BR1L0 


SET 


BRL2G 


JUS02 


SET 


■ 




0R0 


NT4DR 




RGTM 


11 




CHP11 


13 




0PT3T 


12, C 




ORG 


•-I-BR1LG 




IFN 


BRiLG 




IF 


•~JUS02-1>127 




ERR 


• 'L' AFTER UNTIL • 




ELSE 






FCB 


JUS02---1 




END IF 






ELSE 






FDB 


JUS02-e-2 




ENDIF 






ENDfl 





MACRO 


<reg>. <diff> 


PAT2T 


12 


IPW 


BNP4.34 


PGT3T 


H. n 


IFN 


BNR3G,72 


IF 


BNR3G-2 


LEAll 


12,11 


ELSE 




IFC 


11, D 


ADD11 


•12 


EL5E 




IF 


tdNI 


INCH 




ELSE 




IF 


12—1 


DEC1I 




ELSE 




ADD1* 


12 


ENDIF 




ENDIF 




ENDIF 




ENDIF 




SET 


m 


PILL 





IF 


12>«7FFF 


BLO 


a 


ORG 


• -1 


ELSE 




ORG 


»♦! 


ENDIF 




IFN 


BRL2G 


IF 


NT4DR-»*1 127 


ERR 


•*L* AFTER FOR* 


ELSE 




FCB 


NT4DR*l-» 


ENDIF 




ELSE 




FDB 


NT4DR+1-* 


ENDIF 




ORG 


NT4DR 


IFN 


BRL2G 


BRA 


AD2PL 


ELSE 




LBRA 


AD2PL 


ENOIF 




ENDfl 





• c> COUNTING LOOP 

• Executes a block of instructions while 

• incrementing or decrementing a register 

• until the register contents passes some 

• preset limit. Equivalent to the BASIC 

• FOR NEXT loop except that here the test 

• is made at the beginning, so that the 



♦ MULTIPLE CHOICE STRUCTURE 



• This is equivalent to the Pascal CASE 

• structure, which allows you to compare 

• a variable with several different possible 

• values, and execute this Or that section 

• of code according to the result. »mr9, the 

• base variable as one of the registers (same 

• as in IFRG structure), and the only test 

• made is for equal i ty. There are four macros 

• In the structure: 

• CASE only determines which register is used. 

• OF. repeated as many times as necessary, 

• introduces one of the possible values and the 

• corresponding block of code. The value may be 

• defined using any addressing mode. 

• OTHER is the default option* taking cmrw of 

• any case not covered in the OF blocks. It is 

• optional. 



• ENDCASE marki 


a the end of the structure. 


• TYPICAL USE: 


CASE A 


* 




OF e- + 


• 




code for add> 


• 




OF e-- 


• 




'eode for sub> 


• 




OF f» 


• 




<Code for mult> 


a 




OF •'/ 


• 




'code for dw> 


* 




DTHER 


• 




< number or verlable> 


• 




ENOCASE 


CASE 


MACRO 


<r«g> 


RG20D 


SET 







IFC 


A, 11, 12 


RG20D 


SET 


I 




IFC 


B.ll, 10 


RG20D 


SET 


2 




IFC 


D.11,0 


RG200 


SET 


3 




IFC 


D, 11, 6 


RG20D 


SET 


4 




IFC 


K,1U4 


RQOUO 


5Ef 


3 




IFC 


V.ll.2 




ERR 


• ILLEGAL REGISTER 11 • 




EXITH 




RG20D 


SET 


RG20D»1 


AOIPL 


SET 





BRL1G 


SET 







P6SH 


0,0 




ENDfl 




OF 


MACRO 


<*ddr>,(Ll 




PAT^T 


11 




IFN 


BNP4.29 




LGT2T 


12 


NT4DA 


SET 


a 




P6LL 


Q 


NT2DR 


SET 


a 




IFN 


NT2DR.21 




IFN 


AD2PL.A 




ORG 


AD2PL 




IF 


BRL2G 




FDB 


NT4DR-e-2 




ELSE 






FCB 


NT4DR-*-! 




ENDIF 






f?RG 


NT4DR 


AD2PL 


SET 


• •►1 




IF 


BRILG 




LBRA 


RP1LG 




ELSE 






PRA 


a 




ENDIF 




NT40R 


SET 


a 




ORG 


NT2DR 




IF 


BRILG 




FOB 


NT4DR-.-2 




ELSE 






FCB 


NT4DR-e-l 




ENDIF 






ORG 


NT4DR 




GINOD 


11 




P6SH 


♦-1 -BRILG, 


il CASE 


ENDfl 





30 



MACRO 


CLI 




LGT2T 


fcl 




SET 


• 




P6LL 


Q 




SET 


• 




1FN 


NT20R, 


21 


1FN 


AD2PL, 


6 


ORG 


AD2PL 




IF 


&RL2G 




FOB 


NT4DR- 


♦ -2 


ELSE 






FCB 


NT40R- 


• -1 


END IF 






ORG 


NT40R 




SET 


♦ ♦1 




IF 


BR1LG 




LbKA 


KHILu 




ELSE 






BRA 


• 




END IF 






SET 


* 




ORG 


NT20R 




IF 


8R1LG 




FOB 


MT4DR- 


*-2 


ELSE 






FCB 


NT4DR- 


•-1 


ENDIF 






ORG 


NT40R 




P6SH 


*.g 




END* 






MACRO 






SET 


» 




P6LL 


Q 




SET 


# 




IFN 


NT2DR, 


3 


IF 


BRL2G 




FOB 


NT4DR- 


-♦-2 


ELSE 






FCB 


NT4DR- 


-•-1 


ENDIF 






ORG 


AD2PL 




IF 


BRL26 




FDB 


NT4DR-*-2 


ELSE 






FCB 


NT4DR* 


-♦-I 


ENDIF 






ORG 


MT4DR 




ENDtt 







JSR GETHEX 
WHILE B,NC,»0 

TFR X,D 

STB Y«- 

JSR GETHEX 
END WHILE 
TFR V,0 
SUBD *BYTLST 
STB LENGTH 
JSR PCRLF 
LDA t»l 
LDX *SYSFCB 
ilA , * 
JSR FMS 



• START READING FILE 



Get list of bytea to compart 



Compute lenght of byte 1 1 mt 



Open file 



8EGSCT JSR FMS Pas* loading addreaa 
JSR FMS 
JSR FMS 

STA LSECT And note length 
RTS 

PRGEND LDA l.X 
1FRG A.NE.MB 
JSR RPTERR 
I FEND 

JSR FMSCLS 
I FEND End o-f main program 
JMP WARMS 



Set first byte 



IFCC EO 

LDY eBYTLST 
JSR FMS 

LFRG A 1 E0,»2 Check if binary ti*m 
DEC 3<5,X 

LBSR BEGSCT Take ttctor Length 
JSR FMS 
bNE ERROR 
1FEND 

• LOOK FOR A MATCH 

REPEAT 

J»SR ENDTST 

1FRG A.EG.Y 14 f i srt byte matchit 
t-DB LENGTH 

LOA 34, x Note pomttion 
STA CURBYT 

DECB Im it a mingle byte? 
EFCC NE No, check reet o4 I ret 
l.EAY 1,Y 
REPEAT 
JSR FMS 

BNE ERROR 
BSR ENDTST 
1FRG A.NE.Y* If no match. ju/f>p 

BRA MOMTCH 
I FEND 
DECB 
UNTIL B, EQ.e0 
1FEND 





BYTLST 


EOU * 






END FALST 






• STANDARD PRE 


-NAMED 


C640 


SvSFCB 


EOU 


•C840 


CD03 


WARMS 


EOU 


•CO03 


CD1B 


PUTCHR 


EOU 


•COlB 


CD2* 


PCRLF 


EOU 


•LD24 


CD2D 


GETFIL 


EOU 


•CD2D 


CD3C 


OUTHEX 


EOU 


•C03C 


CD3F 


RPTERR 


EOU 


•CD3F 


CD42 


GETHEX 


EOU 


«CD42 


CD43 


OUTADR 


EOU 


•CD4S 


D403 


FMSCLS 


ECU 


• D403 


D406 


FMS 


EOU 


♦D406 



• SEARCH COMMAND 

• LOOkS THROUGH A FILE FOR A SERIES 

• OF HEX VALUES 

• YVES LECLERC, 12/2/82 

• FLEX ROUTINES AND ADDRESSES 

HARMS EOU SCD03 
GETFIL EOU SCD2D 
GETHEX EOU »CD42 
OUTADR EOU SCD4S 
OUTHEX EOU *C03C 
FUTCHR EOU SCO 18 
SVSFCB EDU SC640 
RPTERR EOU *CD3F 
FMS EOU tD4<2»6 
FMSCLS EOU SD403 
PSTRNG EOU «CD1E 
PCRLF EOU »CD24 

• INCLUDE STRUCTURED MACROS 

OPT NOL 
LIB ASTRUCA 
OPT LIS 

• PROGRAM BEGINS 
ORO 4C100 

FALST BRA TRUEST 

• VARIABLES 



MATCH FOUND 



LDY #BYTLST 

LEAX 30.X 

LDD 0, X Does it bridge two sectors? 

IFTST CURBYT.EQ 

DECB Adjust sector addresm 

IFCC EO 
DEC A 

I FEND 
I FEND 
1FRG D.NE. SCTADR 14 not same sector as 

STD SCTADR last match, print isctor 

JSR PCRLF address. 

LDX •SCTADR 

JSR OUTADR 
IFEND 

LDA #'/ Print position of byte in sectc 
JSR PUTCHR 
DEC CURBYT 
LDX eCURBYT 
JSR OUTHEX 
LDX eSYSFCB 



* EXTERNAL LABEL. EQUATES 
LC1F2 EOU SC1F2 



It £i4D 
NOMTCH LDY »BYTLST 

JSR FMS Get neKt byte of *ii< 
IFCC NE 

CLRB Flag "end of file" 
1FEND 
UNTIL B,EO.«0 
I FEND 
ERROR BRA PRGEND 

• BEGINNING OF BINARY SECTOR 



100 



ORG 



»C1(2»0 



LENGTH FCB 1 
SCTADR FOB 
CURBYT RMB 1 
LSECT FCB 



Lenqht of byte list 
Address o-f present sector 
Byte addressed in sector 
Remaining lenqht of sector 



• GET FILE NAME AND BYTE LIST 

TRUEST LDX eSYSFCB 
JSR GETFIL 

IFCC CC,L If no error in name 
LDY SBYTLST 

'68* Micro Journal 



ENDTST IFTST LSECT, NE 
DEC LSECT 

IFTST LSECT. EQ If and of sector 
BSR BEGSCT Gd to next 
JSR FMS And get first byte 
IFCC NE 
PULS Y 
BRA ERROR 
I FEND 
I FEND 
I FEND 
RTS 



100 


20 


05 


LCI 00 


BRA 


LC107 


102 


01 




LCI 02 


FCB 


•01 


1*3 


00 00 


LCI 03 


FCB 


•00.S00 


105 


43 




LCL03 


FCB 


•43 


106 


00 




LC104 


FCB 


• 00 


107 


BE 


C840 


LCI 07 


LDX 


•SYSFCB 


10A 


BD 


CD2D 




JSR 


GETFIL 


J0D 


102? 


00 OE 




L.BCS 


LCIEF 


111 


109E 


C1F2 




LDY 


•LC1F2 


115 


BD 


CD42 




JSR 


GET HEX 


118 


CI 


00 


LC11B 


CMPB 


•0 


HA 


27 


0* 




BEQ 


LCI 25 


11C 


IF 


10 




TFR 


X.D 


HE 


E7 


A0 




ST8 


0,Y* 


120 


BD 


CD42 




JSR 


GETHEX 


123 


20 


F3 




BRA 


LC11B 


123 


IF 


20 


LCI 23 


TFR 


r.D 


127 


e3 


C1F2 




SUBD 


»«C1F2 


12A 


F7 


CI 02 




STB 


LCI 02 


12D 


BD 


CD24 




JSR 


PCAL.F 



31 




THE COMPLETE BUSINESS SYSTEM 

^Multiuser Highly Expandable+Cost Effective 



S+ THE CONCEPT 

The S+ system is a modular computer system in 
which all portions of the hardware and software are 
designed to work together in the most efficient way 
possible. An S+ single user system with floppy disk 
storage is a competitive and cost effective entry level 
system. Unlike most other small computers being 
sold as "personal", or "small business" machines, 
the S+ system may be expanded to maximum 
capabilities using this same hardware and software. 
You cannot end up with a DEAD END system that 
cannot be expanded and whose software is not 
compatible with larger machines. A basic S+ system 
may be expanded to thirty-two users, a megabyte of 
main memory and hundreds of megabytes of hard 
disk storage by simply plugging in, or connecting the 
desired upgrade equipment. 

TOTAL DESIGN-Hardware and Software 
The S+ system is an integrated hardware and soft- 
ware design. The two complement and enhance each 
other in this system. The UniFLEX® operating 



system used in the S+ systems is patterned after the 
Bell Laboratories UNIX® operating system, one of 
the most admired and widely used operating systems 
in the world. Instead of being an afterthought, the 
software is part of the design of the S+ system. You 
can be sure that with this approach that all parts of 
the computer operate with maximum efficiency and 
cost effectiveness. 

THE CENTRAL PROCESSOR 
The basic S+ system is configured with 256K bytes 
of memory and can be expanded to more than 1 
million bytes. An efficient and fast hardware 
memory management system is used to allocate the 
available memory among the users on a dynamic 
basis. As little as 8K bytes, or the entire memory— if 
needed— can be used by any individual user. This 
makes it possible to run very large programs on the 
system, but it also uses no more memory than 
necessary for a particular job. The increase in cost 
effectiveness of this system over crude and outdated 
bank switching arrangements is dramatic. 



32 



68' Micro Journal 






The central processor runs in both user and super- 
visor states. It can detect and reject a defective user 
program. It is impossible for a user program to go 
bad and stop the entire system, as can happen quite 
easily in less sophisticated systems. 

Task switching is accomplished by use of a multiple 
map RAM memory, with sixty-four individual task 
maps. Each task can access from 4 to 64 K-bytes of 
memory. Multiple tasks may be used in programs 
that require more than 64K bytes of memory for 
execution. When a task is completed the memory is 
automatically released for other use. 

SOFTWARE 

The S+ operating system, UniF LEX® is a multiuser, 
multitasking operating system based on the UNIX® 
operating system that has been used for many years 
on Digital Equipment Corp. PDP-1 1 series minicom- 
puters. It is considered one of the most sophisti- 
cated and "user friendly" operating systems avail- 
able. Variations of UNIX® are rapidly becoming 
standard on mini and larger microcomputers. 

A large variety of languages are available for use 
with the system. These include FORTRAN, 
COBOL, BASIC, and Pascal. Word processing 
packages are also available to give you full text 
processing capability on the system. 

Applications programs are available in large quanti- 
ties in many fields. This includes general business, 
medical, dental, veterinary, library and real estate 
management; plus others. Since the system is 
multiuser it can also be connected to cash registers 
to produce a point-ofsale terminal system combined 
with the computer. The possibilities for application 
of this system are endless. 

THE I/O SYSTEM 

The S+ system is totally interrupt driven. All ter- 
minal and printer I/O devices connect to an I/O bus 
separate from the main bus. Up to thirty two 
separate devices may be connected to the I/O bus at 
any one time. If I/O activity is great enough to cause 
an unacceptable slowdown in system operation, a 
separate I/O processor can be installed in the 
system. This plug-in option removes all I/O handling 



overhead from the main processor and allows 
operation of up to thirtytwo external devices at 
9,600 baud. Without an integrated total design, as in 
the S+ system, it would become impractical to use a 
UNIX®type operating system in a situation with 
heavy terminal I/O activity. 

DISK STORAGE 

A wide range of disk storage capacity is available for 
the S+ system, from 2.5 M byte floppy disks to an 
80 M-byte Winchester and many sizes between. All 
disk controllers use direct memory access (DMA) 
type operations to maximize data transfer and to 
minimize overhead on the main processor. The 
Winchester disks also use intelligent controllers 
along with DMA transfers to preserve the perfor- 
mance that these type devices are capable of giving. 
Without this distributed intelligence the system 
performance would be greatly degraded. The 
UniFLEX®operating system is designed to work at 
maximum efficiency with this type disk system. The 
data transfer rates achieved by this combination 
rival those of large minicomputers. 

COMMUNICATIONS 

A high speed local network communications system 
is available to interconnect S+ systems. The VIA- 
BUS® network will allow communication between 
systems at data rates of over 400 K baud. Such a 
system makes it possible to share data between 
local systems in an efficient and low-cost manner, 

AVAILABLE SOON 

Tape backup— 20M*Byte in less than 15 minutes on 
a standard V* inch cartridge. 

Mini-Wini— 5 and 10 M-Byte Winchesters— 5% inch 
package. Winchester performance, for smaller 
systems in a small package. UniF LEX® com- 
patible design. 

Large Capacity-190 and 340 M Byte Winchesters, 
plus SMD cartridge drives. 

UniFLEX is a registered trademark of Technical Systems 
Consultants. Inc. 

UNIX is a registered trademark of Bell Labs. 

VIA BUS is a registered trademark of Southwest Technical 
Products Corporation. 




SOUTHWEST TECHNICAL PRODUCTS CORPORATION 

219 W. RHAPSODY 

SAN ANTONIO, TEXAS 78216 (512) 344-0241 



W Micro Journal 



33 



130 


86 


01 


LDA 


• 1 


:i32 


BE 


CB40 


LDX 


•SYSFCB 


133 


A7 


B4 


STA 


0»x 


1137 


BD 


D406 


J5R 


FMS 


13A 


26 


7F 


BNE 


LCIBB 


:i3c 


106€ 


C1F2 


LDY 


#LC1F2 


:140 


BD 


D406 


JSR 


FrtS 


:i43 


Bl 


02 


CnPA 


«2 


14* 


26 


0B 


BNC 


LCI 52 


:i47 


6A 


BB 3B 


DEC 


39 t X 


:i4A 


17 


0089 


LBSR 


LC1D6 


:14D 


BD 


D406 


JSR 


FMS 


;i3« 


26 


69 


BNE 


LCIBB 


:i32 


80 


69 CC1S2 BSR 


LCI BO 


:i54 


At 


A4 


CnPA 


0.V 


::56 


26 


53 


BNE 


LCIAD 


:i5e 


F6 


C102 


LOB 


LCI 02 


CI SB 


A6 


BB 22 


LDA 


34, X 


ClSE 


B7 


C103 


STA 


LCI 03 


C16I 


5A 




DECB 




C)62 


27 


14 


BEO 


LC17B 


C164 


31 


21 


LEAY 


1, Y 


C166 


BO 


0406 LC166 J5R 


FMS 


C169 


26 


50 


BNE 


LCIBB 


C16B 


BO 


50 


BSR 


LCI BO 


C16D 


A] 


A0 


CMPA 


0,Y* 


C16F 


27 


02 


BED 


LCI 73 


C171 


20 


3A 


BRA 


LCIAD 


C173 


3A 


LCI 73 DECB 




Cl?4 


CI 


00 


CUPB 


«0 


C176 


26 


EE 


BNE 


LCI 66 


C17B 


108E 


C1F2 LC176 LDV 


«LC1F2 


C17C 


30 


BB IE 


LEAX 


30, X 


C17F 


EC 


84 


LDD 


0, x 


C1B1 


70 


C105 


TST 


LCI 03 


C184 


26 


04 


BNE 


LCIBA 


C1B6 


3A 




DECB 




C1B7 


26 


01 


BNE 


LCIBA 


C1B9 


4A 




DECA 




CIBA 


10B3 


C103 LCIBA 


LCI 03 


C1BE 


27 


0C 


BED 


LC19C 


C190 


FD 


C103 


STD 


LCI 03 



C193 


BD 


CD24 




JSff 


PCRLF 


C196 


BE 


C103 




LDX 


•LCI 03 


C109 


BD 


CD4S 




JSR 


OUTADR 


C19C 


86 


2F 


LCI9C 


LDA 


**2? 


C19E 


BD 


C01B 




JSR 


PUTCHR 


C1A1 


7A 


CI A3 




DEC 


LC103 


C1h4 


BE 


C105 




LDX 


•LCI 05 


C1A7 


BD 


CD3C 




JSR 


OUT HEX 


CIAA 


BE 


CB40 




LDX 


•SYSFCB 


C1AD 


10BE 


C1F2 


LCIAD 


LDV 


*LC1F2 


C1B1 


FD 


D406 




JSR 


FMS 


C1B4 


27 


0i 




BEO 


LCI 07 


C1B6 


SF 






CLRB 




OB7 


CI 


00 


LCI 67 


CrtPB 


• 


C1B9 


26 


97 




BNE 


LCI 32 


CIBB 


20 


26 


LC1PB 


BRA 


LC1E3 


CIBD 


7D 


C106 


LC1BD 


TST 


LCI 06 


C1C0 


27 


13 




BED 


LC1DS 


C1C2 


7A 


CI 06 




DEC 


LC106 


C1C5 


7D 


C106 




TST 


LCl«i6 


C1CB 


26 


0B 




BNE 


LC1D3 


CICA 


BD 


0A 




BSR 


LC1D6 


C1CC 


BD 


D406 




JSR 


FMS 


C1CF 


27 


04 




BED 


LCID5 


C1D1 


33 


20 




PUL5 


Y 


C1D3 


20 


E6 




BRA 


LCIBB 


C1D1 


39 




LCIDS 


RTS 




C1D6 


BD 


D4(^6 


LCI Do 


JSR 


FMS 


C1D9 


BD 


D406 




OS* 


FMS 


C1DC 


BD 


D406 




JSR 


FMS 


C1DF 


B7 


C106 




STA 


LCI 06 


CIE2 


39 






RTS 




C1E3 


A6 


01 


LC1E3 


LDA 


l.X 


C1E3 


Bl 


08 




CMPA 


• B 


C1E7 


27 


03 




BEO 


LCI EC 


C1E9 


BD 


CD3F 




JSR 


RPTERR 


ciec 


BO 


D403 


LC1EC 


JSR 


FMSCL5 


C1EF 


7E 


CD03 


LC1EF 


J MP 


WARMS 



CI 00 



SMALL/SIMPLE 
EXEC-68KECB-68000 

by Phil nuc 1 as 

tocorol* Inc.. S«*}condvctor Produce* Sector 
Executing tm> independent program* on the *e*c )\9td~ 
were with In-lint Cod* is difficult, tiecutlng tore 
than two IS v«rv difficult. The ECBEJCC H * CO'itnol 
orognn nMch greatly simplifies, this task. Up Co 
Seven User progress «ey be run concurrently, but not 
Simultaneously. Trie ECKXEC control* Che frqtwnct a«id 
duration of execution and assures that each uier pro- 
gram receives equal ti"t if desired. Provisions are 
awjoe to iIIom use of Che Interrupt vectors, and to start 
Or (too other uS»' proqraai. 
Functional Qescr lotion: 

94N.L (?X nex bytel} 

Up to 1 iilir proqrfMI «iy he run. 

Alio** git of 68* Autovectors p)«* any elohl other 65K vectors. 

Allow user program to ho deactivated or activated with or without 
delay?. 

Allot* mtMa of 1 »a< execution tie* before temtrietlon. 

Eailly e»rqed, linked or combined tilth ut* pro^raat. 

Relocatable 

ALL user procr«w operate In the USE« n*de. 
fSeory of Operation: 

The fir»t Job of the UfiCKCC on itart up ti syite* Initial liation. The 
eiui<.ul1«« itack i\ established. All ectl«« uier pro<iraa entries In the scan 
taole (it; PWPC/9), will tieve ttiftlr ttaeki Initialized. The exception »ec- 
tors «111 be Initialized and Che tlsvr will he Initialled, Ho other nerd- 
Mare It initialised by the e«ec 

Tht EC&ltC now ftaq1n$ to «can the table looking for program* to exeew4t. 
The table ftart address I* loaded, and the dtlav count of the first program 

34 



IS tested, tf tt S% r?i. tr« tAte pointer \% lncren«/iCed end the next entry 
checked. If It li *|» Chi praqran UKl it fetthed from the t*h> and the 
machine contents are restored. An 9.TL is thfn executed to 1u*o to the User's 
proof**. Since this Is the first ti«* this prooraa hat been nm» the oroqran 
counter in the table should hate been pointing to the initialization routine for 
that prograa. 

The initialization routine for this user prograa requests interrupt service 
(if necessary) from tha exec. It alio sets up any parameters needed later m 
the prograa. ana then branches to the fteln prrjqra* . 

Execution continues 1r> the \titt orooraa until one of t*o things happens: 
\) tn« proqrAn regucsti teralr.atlon or ?J the prograa tinier tlaes out. The 
result is the seat. T*« entire rnachine state 1s saved on the User stack, and 
the stacii pointer Is stored in the scan table. 

The ECBEXEC then be9tns scanning for another scan table entry whose rielay la 
zero. Mhen It finds an entry *iose delay is Zero. It fetches the stack pointer 
Uom the scan tattle and restores the Machine state. It then executes §n RTE Co 
Jump to the User's prodr**. 11 the end of table Is reached, the Executive stock 
Is restored, and the table st-#rt address IS reloaded. The tCtf JtEC then begin* 
scanning fras the beginning of the table. 

The 91/1 ti"»r Si active durtno the entire lime the e«ec is operational. 
The tinier provides level ? Inter rtipls t¥*rf ZSo ml 111 tecoodi . Tno exec routines 
handle the tipnjr. The tnterrupt handier, TIKI, removes tne (nterruot and Inert* 
ment* the TlC«£R Mtxt the prograa lifter. It also checks to see if tne program 
titter • a. If it is, the interrupt handler begin* the process to teminate 
the program. The TIClfR contains the count since TlftER was active. The second 
timer routine 1s called slapl.y TlhtR. Ttlf R nin«9«s the delay counts for ail 
scan table entries. TlttR is Che first entry in the scan table. It gets the 
value of 1ICICH and then Clears the TICKER. It than tests each entry in the scan 
tabll. Delay counts of zero or SfFFF (forever) arfc slipped, but all others er» 
de< resented by the laved value of TlCCER. fach entry Is tested and/or decrement- 

'68' MiCfD Journal 






m wit II th* end of the table Ik reached. UtIK then requests termination wit* I 
delay. 

All ECSEXEC requests art handled throw oh TRAP ft. Four possible actions can 
bt requtsted. The request nuatoer Is determined by 07. 9 at tflo»*> In the table 
below: 

&£J| Action taken 

99 Terminate this routine forever. 

II Terminate for delay specified 

(06. V las delay count) 
I? Act ivate a pro or am 

{A*, i * as.l ha v # program n W and Oo.w hat dtlav count) 
II Interrupt vector me Request 

106.B has Interrupt vector arid A5.L hot service routine 
address) 
the flrit two requests will not return to the calling program, the second 
two will retum to the caller upon completion. Jn all case? of TRAP PI, if tht 
requested ectlon was performed* then D7.8 will contain tnat request. But If the 
request mos denied for eny reason. 07. 8 will be CHARED. It Is Importent to 
check this In the user proqreml 

Tht flrtt three t*n be called mynie. fhw fwrch, Interrupt Service Bequest 
flSR), H|6D only be called once durlnq tht Initialization portion of the user oro- 
gram. 

Sfnce only lb Interrupt requests art evellebte, repeated use of the 1 SR w1 1 1 
result in refusal sooner or later. 
Combining User Programs with the ECBE HCt 

The tC«£iEC mvit be loaded into SAM. Any means of qettinC; it there it 
acceptable. It does not neve to 0R6 «i $89*. but It Is suggested. It is easier 
to rtetne once ell User vro<r«m% hove been added. 

loed the User orograms into Ren beginning at SlflW or Just abqve or helov 
the ECSClCC If It Is not et $StfJ. An assembly listing of the User programs is 
RMatSlf*** 

Soma decision will have to be made a; to placement m the tcir, table et tMt 
determines the order of execution. This problem Is left completely up to the User, 

Perform a memory modify ;L on the user program #1 entry In the scan table* 
If e different erne Is desired, enter It. No* modify the OeUy count. Jf the 
orooram should be executed Ivedlately, enter I WW. How nodlfy the PGH counter 
entry, tnter the IdQKD storting address Of trie user program el here. The ne»t 
IVOR? efter PCHPC It the Program Stack location. Enter the user Stack address 
here, the User Stack HOST be et least M bvtet in lenqth for each user progrem. 
Repeat this process until all Uter orogramt ere entered into the seen table. 

It is suq9ested that e copy or the entire prolan (EtEC«USCfO be saved 
at this point. 

If a different eiecutlon address Is desired, the wtio le prpqraw nay be 
MiT«d to wherever the user went 4 , Note however, tnat tht address in the scan 
table are ABSOLUTE end mitt be ^edified for the program to run et any other 
address. The ECRCiEC itself i* comDiatetv relocatable. 

The program May be sterted by executing at the first location of the 
ECttiEC. Execution will continue until REltt or en unlnin allied" interrupt 

occurs:. 

Interrupts for which no 1SR was < ranted or which ere unused In the op- 
eration of the £SCC ere wnlnltlallfod interrupts. Thase Interrupts all have 
the *e«e effect on the tyttan. fh* 6* status register Is Toeded with U?p9 
and (hi processor steps. If the ECOEXEC stops i.mom operation this Is usually 
the cause. Place an ISE BEFORE you «*oect Interrupts to occur. 

A Slmolr Ciemple: 

Tvo simple User oroqrems were used In the debugging of the ECtfiEC. The 
scan table of the ECKXEC And program listings appear below: 

The two ei ample program Mr* alike except thet they call different in. 

'68* Micro Journal 



terrvpt vectors and turn each other on. 

EiABinlng the first in detail we see that it has en initialization lection 
which is the first part executed. Note that this tectton will be ekpeuted only 
once at r»o other pan of the or oar an branches to It egeln. Initial liatlon 
consists onlv of a request to use an internet vector. The vector nutter, W? t 
4nt service routine address, ilOxx , ire both specified, The request is thtn 
nidi to the ECftflC. A test 1s aadr upon return to see If ttie requrst we* (ranted 
hut no action Is taken. After initialization, a Ioik) deli* loop Is encountered. 
Execution will continue here until the loop finishes or oroqran t Ine-out occurs 
(proqrem tine out occurs first t). The EC9EXEC terminates this progre* and ones 
looklnq for another to activate, tt finds only one oilier, the Tl>€R proqran, 
which it executes. Upon tarainatlon of Tl»«iR it is USCftPGhU's tine to run aoeln. 
Execution beqlns where It left off In the delay loop. The loop finishes end 



HO 1000 


aptiox 








001000 


1C3C0042 


rtove.b 


a 66. 06 




ItUlM 


IQFfllOM 


ttA,l, 


eO)0010»4tA6 




noiouR 


1E3Cd0C13 


rtfjwe.b 


e3.t>7 




ooiooc 


«:il 


ItiW 


tl 




001 OUK 


0CO70 003 


cHP.u 


♦3,07 




001D12! 


«./! 


NW 






001011 


203C0OG1FFFF 


fdXC.L. 


el3107J.D0 




onioirt 


KWfl 


ajBu.w 


»1pD0 




00 1- OIL 


e^r'6 


ew€.s 


•0010 14 




00101E 


4246 


rxM.u 


06 




001DZD 


287C4A554€4e 


«OVft..L 


ei247l04S£7.rt4 




0D1D26 


••CO 


6UD.L 


ASi'AS 




DOJ D2H 


1C3C0O02 


rHK€,» 


02.07 




u>: j u.'.: 


1tI4t 


TPMS> 


• I 




0D102E 


0C070002 


CMfNH 


•2*07 




001032 


6606 


BNE.S 


4001036 




HD1034 


420? 


Cl.lt.fl 


07 




0103A 


4E11 


TieV 


el 




MltM 


AOOA 


««A.S 


4001014 




00103A 


287C5S13^3»> 


HOVt.L 


• 143 1520 5¥4#A1 




q D1O10 


2A7Ca0474D3? 


fS<K€.L 


• l J-V^MHi'.'ij-*V. 




goiP^A 


ar.^cfloci 


HQMt.W 


#4*06 




••lt%| 


inciiia 


HtA^.B 


02r97 




OPlD^t 


4t41 


IRAf- 


41 




MlMM 


*0£? 


BKA.S 


•D01034 




00 1032 


FTFF 


oc.w 


•Ff-TF 




BltMH 


4E73 


ftft 






01096 


FFFF 


OC.W 


tfi'eT 




TU10R 1 


1.2 > *1D 2000 SpUIWI 








002000 


1C3C0D43 


HWE.* 


f67rt>6 




002001 


4DFB2DS4 


LtA.L 


frO0OS7054.A6 




002008 


It 3C0 tO 3 


ncvt.t* 


♦3.07 




UOi'OOC 


4E41 


TRAP 


ei 




oo£ out: 


OC070003 


CflP.B 


♦3.07 




002042 


4C71 


HDP 






002411 


203C000liFFF 


rlCNC.L 


»13l07lfk>0 




oo^oirt 


340 


suet^.M 


•leM 




IBZItC 


64f6 


BNi:.ti 


•002014 




ItKOlE 


4^46 


CUK.U 


D6 




•Mi.- II ," M 


S97C4A&V1F4D 


f«W£,L 


•I247104S97.A4 




OD.^IA 


99CD 


tlliB.L 


6&.A» 




••S«3Si 


IE3C0002 


fSU^E.e 


02.07 




0070ZC 


1r.1l 


IWV 


•I 




••2MI 


0C070002 


ciir.ii 


02.07 




1*2133 


*/06 


e^fc^a 


S00203A 




002034 


4207 


O.K.U 


0/ 




i»2o:io 


1B41 


iitof 


ei 




002030 


600W1 


&NA.t> 


♦ 00201 ■! 




0020jM 


2e7CKSd345S2 


NOVC.I. 


ei^jtwrosv^rrt'i 




QO^OIO 


2ft7C30474O3l 


HO^E.L 


el^46M»0 0V/rMV 




ilO.'O^A 


3C3C0094 


fWJUt.W 


♦ o.o* 




••SKIP) 


1E3C00Q? 


MOVE, El 


e^rl)7 




00201p 


4t41 


TWrtP 


•1 




uu.ro:, i> 


60C2 


6kA,9 


4002034 




0«S»b2 


HH 


tx:.w 


ifFFI 




•0S9M 


1E73 


RlE 






0020iiA 


FFFF 


DC.M 


iFKF 




request H wade to activate a oroorea called ' 


JUNK '. A look at the scan 


table shows that the EC8EXEC will 


revtrn an error becaute 'JUNK 


' does not 



e«tst. fortunately, a test Is made on 07.0 to determine If the requested action 
wes taken. Since the request his refused, an etteewt to activate another proqren 
occurs. This tine the r«que$t Is to ectivate "USERf QK2" with a delir of 4 
(about 1 sec). Since "US£RPu*2* does eiitt . this request win be wanted how- 
ever, no check is made to be certain of it. The last ,1ou of this pronrew Is to 
terminate itself. It does to with a delay of forever. This wans that this 
proqrea irlM never become active until another proqram requests U to E»co»e 
active. 

It it lean rtent to remember that the next time this program becomes active, 
eiecutlon will beqln with the 1 ntt met ion f«l lowing the T*A* instruction* In 
this ease that instruction. Is a branch to the wan start U'ter Initialisation). 
Keeo this In eHnd when writing your own progress. 

The second exa*Ple proqram Is different fro» the first only lei thet It 
requests use of vector number Ul, end turns on *USERPMV. The afreet of 
running thf» praqremt with the ( IIH KfC Is that they alternately KttVWtf each 



35 



&.*er, 4«w1 deUy aAoul I/? teCOftd hetaven «a*tut1nQ. Amy tine loeM non.ta* 
•nut 1*0 tiler erODraei Is lornt tcennlm* In the ECBEJEC. 

Any type or uttr proor«n my be used with the CCflEXEr. However, 4 r«y 

suqq»&tio<« mi r 1 t* mO- Stav avtv fro* long dela* l°op* or oolUnq routines. 

Try Interrupt driven I/O instead. Real t la* *lm my be oeherated but Mitch 

tne ri«(utlon tla* of other proqram. Choo»e the order or orosrap* in the 

Hole Mlth cere. Po»1tlo« In the t«bie if «ery 1«port*nt. It i| oo«»(b?e 

to rtoueit use p« the two tnterrupt vector) milch the EfKXEC uiei eurin? Us 

operation. Doing y> cr»h«s the ECREXEC. 



Unna TUTlR with the ECKJEC; 
*1D <*5t* CO 



ODD 38 

tHrUMMI 

000680 
0003«tJ 
000OA8 

Hoot*** 

000HC 
OOOBUti 
OiiDHLH 
ilOOdt B 

qoqvoei 
mtoR 1 
«0o«>e 

O«O0SC 

oooo«so 

000 6-1 
000068 
O0086C 
00 01*7 

dooe/4 

000 76 
UBOB/C 
000980 

uoaaf)4 



♦ooavo 
oooevi 
boouvu 

U00B9C 

oooaAo 

000801 

oodiioa 

000800 
090001 

• oofjeu 
oodtvc 

0O0BC0 
008C1 
0008M 
OU08CC 

ooouo* 

O0OM1 
Qt>0.*0f1 
00QBIX. 
0041 14 D 
(JOOrft-t 
U0 0H1 H 
oftutd L 
'JUOi* 

uoiitu 11 

010OFB 

■jootje. 
000700 
000701 
QOf]<rO« 
OOOVOC 
0009X0 

000*11 



•5,1 4V 40 43 32 20 

00 DO Oi 'Jit OQ uiJ 

•• 00 Ot H Ot 00 

X 53 13 52 SO 4/ 

00 00 *!0 Di dO 00 

►T FT OU 00 00 

53 53 4s 52 SO 4/ 

GO 00 00 (JO 00 00 

n ft 00 00 00 00 

55 5jJ 1"j 55? SO 4/ 
hi. 00 00 00 00 UN 
MM OU DB OD OU 
Z HH Q50*L 
54194043 * 
S220VD20 ? 
OOOUOOOti > 
OOOOOOUO ^ 
OOOOOt^a t 
00004f[>0 ? 
!^5;i45T,2 '? 

501/inJi '■* 

00000000 "? 
OOOOOOUO ? 
000111000 '» 

□doopduo • 
KiKift L p.' t 
501/1032 ? 
MFFflOOO r 
00000000 V 
00002000 ? 
00003000 V 
55S&15S2 ? 
S01/1B33 ? 
IFHOflOO > 
DOOOOOOO * 
00000000 •» 
00009000 7 
555n4S?S? ? 
50474034 7 
IhFFOOOO t 
00000000 7 
00000000 > 

■oooouoo * 

ttStto%5V > 
t,0174OJS * 
II Fl 0000 > 
OOOOOOQO 7 
II 000 000 » f 

oouuouuo * 

1>5531!M» 7 

?,4>4/4036 > 
mi 0000 T 
OOPOd 00 7 

oootjoooo * 
00000000 * 
585CI 4r.»:ji' r 
i.0 17103/ V 
f| F> 000 I* ► 
00000000 ? 

uoooodod ? 
ooooodoo v, 



rll 


r>0 


(Ml 


DJ 


10 


32 


30 


00 


00 


00 


40 


34 


00 


00 


00 


00 


to 


IA 


NO 


(JO 


mi 


IJO 



00 00 00 00 00 00 114 40 

5» IjV3 4^ t»2 50 4/ IO .11 

00 00 10 00 00 00 *0 00 

FF FF 00 00 00 00 Otl 00 

SS 53 45 52 %0 4/ 11) 3.1 

00 00 00 00 00 00 00 00 

FF Ft 00 00 UO 04> 00 00 

55 53 ir* 5? SO 4/ 10 35 

00 00 00 00 00 00 00 00 

fr IF 00 00 00 00 Ou 00 

55 53 4S S2 50 47 10 3/ 

00 00 00 00 00 00 00 00 



It tt omstolc to os* lUlOtt to dehoq user Orooreas runnlno under the 
ECK UC. To do ic «ou Wi»t elite MOP* over th« OSfli to EVIfClT ind ItNTT *t 
tlte oc<9ln<tinq o< ECflf *EC. V0» «u&t ther> set uo toe TRA? »1 vector -1th the 
edOreo or OTSAPI. lh« ooertl too of ECU* «C end the «*rr orporem mjy then 
be oMervtd »*1t^ TUTOR, note tov««er. thit tt«e »I/T 1« WOI KtWe intf ml- 
tl* del*rt «I11 n»! MHrti 

ECKIEC *1 ^el'one*l To help the lturfeftt or hohhjrUt KtCOtO 6fl»W 
orooTins on the nKK£C6. It proyMfi the nieenery controH to illo* «nUI. 
tminq or ornqratit and reil-tlnr *1«vi hrfcre e«eeiution< Although i»»nf 
Etfd piKt for the ^9090, few are npftlr to use or »«m11 enouoh to Mt the 



nlHECt!* 



■ .»:»■ . 
MIC 



.1* H'VJ'U *HMitJ 

thi<l »l«€ «rtf ICwTiti 



■ 1M1IH 

.;?:j,;t .<:,i*r: 
;:>,nj *M4Ct*i 

u" ■»• ■ —i^ 

1:. 1- -•< ..« ..i ■ ■- p 

..SJiJl* *r«^*#i KM 

UHfttl *j-5j*» Hi 

WtJfM ill' **»*.! 



■b Itlt 



litti 



1IMM 

«(f[JT#|t||.»/ 

iiai.tiii 



lllllllf Iff *i|C |T»tl *3|H 
IIHlJttll v»H tutu 
ikiniirii i<ii»fi*« iicm» 

HP 1 Mm I'lll t;i*iit 



C^(l l«.I1 II >4t4t fl lit 1« III 
• ^. t.H'i*o( *«{>tff 4«( fir Itli 

it 1 tbi iimi fin 

iH .' ♦"!■» T"i(» 

»n »t>l.l«» »t"l« tlHIll '•Hid' 

■ fUl t*l >*$*!•■ flat! 

iUTJitl »*.»!«» Hl'l 



i«< Ml ulll 


I lit! 


■«l«l 1 


• 4ilD 


ii;i< ii :<- \ 




t 11*41 


• SJI' 


H1THI •• 








iv* re uni 









y»»«!v» *t>i;;H ne;* 

«|9«e»*l *i/*5S« l 
USKlli »KI 



»HWI 1*4 



»lili|» IX 



I iri k 

tl *(«^Hr,ihn,hl 



■ WO. ■ • 



MMtlll* 

tNtMH ' 
MWllI :VH)tit 

j. :-? ; , 1 • 1 x«A7<i 

■Mtlll KXKJl 

«>H*^*-< 3B30*»1J 

MMMl) IHMIU 
.i::?»". Pitbull 

»g)ii>i »«*a#i 

t*ClV,«J[ NMN)> 

MM111 imibk 



-1*1*11* >tlHJ *t" lU 1 1 9* >,HlH ■ 44t. 



IklilUlf 11 lilt IMit ittll 

■•I «r IT i«| im «P III IMU 
•f, tOD« II f,ll ><t|i 

■ii. *»*■♦ :»ii 

iui u» im Html i»rn 



**4l. C»I«T 

IllllUlit 

■■Sill 

114 («Mlll 

11*11 *CIIP«» 



a*i£hF-cn?> ^ 



.11 OI'OP'1] III III M 



•cvtii mt 

11 II llll 

tr»t« njlitu 



:il»m ii»>»itJ 

«M»MI4 »t*'»tl> 
M«33ll| '**» 

L:ij u i*i jij.rai..- 

04»jiix oesiioi. 



P* »I»M( IW»*^1. 

** C«43<«:i MM 

m iriKKt Kimi> 

•• ^»te<tKi xmx>> 

ft o>j:;k: «:«X4> 
11 

ll 49«>NI» IMIH1* 

»; )4Mlh lit'. in 

»» :«44Hl '♦•• 

1/ ;wi4i4i *c;^Jl, 

• 1 esiMix *»V»«.*. 

1. »*»*3«i) kxh;i 

r/ »»»«! «i».«i? 

11 »^Mi«4 »rij|i 

41 »MrtM* »X)tJ< 

it «J90>*3J »»H«i11 

♦♦ flJJJJiD* icirifti 






mW* IIHIU IH| 



4*1 «-fS»i*» 
Vlfi ♦*■*»♦« 

iiim turn 

IIMI1 •!!» 

lllllTll 

fit* t««<HI 

14ICII«|IIII 



«»«» IIMPM **•* 
III" *■*■» 

i««UTr1 
#»• chilli 
it*ci Iflllll 

iilll «IKIt« «Mt 



tmn *l*. 



ilLt>* 1^ 



t(M "IIlT (1**111 1 hi I II 




IE I '1,4 

■■in 



JTI'li- (HI4 



Utl^l* HIU.L 



1**f1«J*t«t)jia 
P««aBClai.»4 

•U»lj 

in-tJii.it 
vlllll 

IHVIKNMt 
lMNIfCl.t) 



m»i<p im-W* 
m»»m «im 

2»MII( ♦4**I»" 

o«nv>i«> xirxji 

C>]HH* 1111 

«>**»♦•• *x;i>;i* 



gMMt > fn,. nfp.. : :KiMi 



BMseK* IM4*l 1 
• «SBt*ti<1lP*»4* 
|>H**II Mil 

mv?*/*«i •.uraMPa 
laooefjt. .iiimh 

MMMK %*U 

b*)bc»:« ii«in:« 

MC«««ri ||>»«BI4 
CtMOttiiiUi 
oovotriti ion 

oMxm iaw 

04a«a*rtv T«i»jrL> 

104001 II JMM30* 

IMHH< H([ 

saaeott* tut 
aaagai'i mm 
rewin M»» 
•aaavjifl •••! 



i*r Miiaoov 

IWOCj ICl !*<[ 

a*»a>A4» «4ii 
I MIM H lanaaff 

It* Will Ulraw* 



<.%».» 


rt»^»r 


Ml. I 


«•••!• 




•in*** 


Kl.l 


,tO«4 


t*».l 


MlarM 


HC.1 


*»!«*• 


1*41.1 


Mn*a« 


i.ia.1 


•l,*m 


via 


4I1M,1I*«I 


ifftl.l 


ti.na.wi 


•I*. I 


•tin? 




*iii*<i 




Kill 


II* .1 


ara#4l 


i.H 


M44J4.I* 


♦ 44 


«fpp4rr*<l 


14*1.4 


M.»» 


na.i. 


vltfi* 


\4» 


tft4>«« 


TJVE .* 


H.IU9I 


■*(.« 


li.44.»l 


Wl + l 




1.I4. a 


If.i* 


■JVI.a 


M.I* 


mtrt.i 


ItrlMI 



•a. i»» Minn 4-eniiiicM 

IH> «ll UMI Mill IMIIII 

XII mtt •*•« *iic. naiitri 

•e 

Mil ih;i mil i4tv« *tiar 

III. >tll*4ll II 

III •*•! T*4» llBMf 

HI 'Itl' <*'■ ISIMI, 



Hall MvM t^MI 

• I I1»*l UC'.IH 1 



«l. IMIIII IIIKK 
II It I* l.'JlHtpl* 
mt ..Ml il(f*u 

M M 41 M*l«[l||4 

ij .rill •■: n» 

Ml. iarM-K.49*. 4t1 «**ir» 

• i.ki mirtta* 

tn illtl *t*»i ijgmt 



£11 Btlt lAlil IPIIT I 



•mi c 
nail 

mi *»a»ir 

'Hwh iiBut iiaMaaitH nstiat 



Kim 11 t1i iieiiti 
* m mini 
nviiii ci »r»im 



1')1 


■ t« (all 


»4K,I 


*T|P»I 


■a*l.i 


•i*.l»ll 


■il^l.i 


*W.M 


**rt.4 


■l«f»4'lll» 




iian.«iin 


■1*1.4 


(•r).-iHi 



•1*4 •>!■■ III! ** 

an ax ■ hki 

4M «ttl •< »«•» Mrli T| v|[| ilif.il 

111 viii ii »ea» iu>ii 1a him 111*41 

Ml I* •*♦ 14JK4 I1M.I Olll irlll 1IIC1 



iiM-iaiit «3i taaar utinni 111. ■ *n 

MVIT (14MII 

urttMi ■•mi. ia*.« •*• tfdf.ia I *» 

:ni4*«iT iiMiii ncaiii 111. 1 "i> iieioi 
kHftvin. n.w •>•« iaari«i iimm 



„ 








H IliMI 


11 ■!» ~M*«ia. T«|# «}.| >Ki t*»t|M Ml*l«44 M*M^II 1* 


1'' 

IM 






; 


*ji»yi4 
E4III. 


ll 11«lMt1 XII Mill* 


• 11 HI l|»H, l.lk M.# ■•(» 44 


1). 
1' 


JII'JHl 4i*tJISl 


7 IM*1 


* 'i .T 


• IM4l.fl 


IJMUI 1«41M«atl 


IM 


i»»'H 


Jll'Xlt 




,^r 








.■:.>..j 


| r (i 




Mml.l 


jtlFM 






j>i.r»w j»i. 




MM 
















Jl«-*l 








/;*«:>;^ 




■J1IT.L 


llJl.mil 








i:m«:* 




■ Ml. I 


«iiii.Tia] 














im»-im 


Hi It a«r Iron |i«l tola mi tlld 












Axaiii^iM-na* 


uti ••►-.- miiu "■■■ 


IM 


1HHIM 


Im 




■111+L 


11. »T 


iiim- m iu*ti itki 






*4t* 




K*M 


aivi 
























'■■1 




■ niMiMCi.ia 


Hi .,,;.-.. 3# MM Uhl 








*«■>! 


Ml.. 


H1,IMM| 


ll Tail ftl HUM" 










Ml.l 




Hi m *t(l 












Vlllllllll.il 


■it an ikiM aaaaiii. 










111 


tK1«04*tlrll 


in laa ai nm laanii 










{1*1.4 














t.-.l 


•II IJ 




n* 




*L3» , l** 




•fll-.l 
111 


M-M.'. ia-iffia.il 

1UIH 


• ••Tan «i(«i*4 nan 

MJ iiniii all iKllif^ »a *Jrt a* 



36 



•68* Micro Journal 



■ 111*44*4* 

•Mt» 




• II 1*1 II If II j IIKiM'K 
M. {*«* trail ItliltlUtlll 

'mm" »j«m« 

HtK i» •*»»» cimi #«* -at* f 



IJiaUtri 
ill- ■>« 
Ul» MM 



•in mill 



IIIIHW 


Mi H Hi l| 






IhlilMII.H 


III M*f inn 


lt.ll 




tlllllll 






Mi. (m, ••'•■• 



kllllll l*XU** < 
•lift! • 



ilUlDM »•** 




m.:» 


»»»*P 


MMmii *ijrtt*« 


■#lLI| 


• IMa.| 




tMMtof rtM«0»l 








JNOIKl Jilt 




Ml.l 




MMki •iuiin 


V IM F| 






IMiUlf. IIKHtl 




• I.I 




MM — H HI! 




111. I 


►Mltf 


JICWlll til*. IIC 






t*+*rf»*-§ 


IrMJIIIl /IM 




• ,1.. 




jxjmu tlxtaei 






•iei.«/ 


tMM4M tilt 




El*.l 


ii 


iS"***/* ||«> 




l»i+l 


*<Mlt 


WPWt iiirnii 


■•"» 


Hffi^H 


••f-ai/is-n 


»)»'ii irkc»i 




tin.* 




a*9ft)*«-; *M» 




U*.i 


M 


MOOVHt iMwrlt 


l»*f*f* 


... 




;i»wiri rtK-.jn 




1L.L 


m 


441X.1LU 


won 


«tw 




i.i:k» fipJt:-* 




CI-., 


I 



**rr m *•■ • » 

M "ii t«i »<riir iiwr 




Mil M III *| 

M -|l 1*1 Ml||l Itvtl 
M l# 




11. r illl f* •IKIn in 
Hit. Ml l**V« 1UH 
• 1*4*1 11l*1«l1J*l K/M 
Ml lift I. 


1 


1* II Ilia IT HIKlUii 
• •tl III Hit «r of .41 


IM 



'••'mild 



tAXlh He*. i 

£3*MC II •'IUNI 

:m«). *i»ir:*r 
jj«x;tr ir*eiax?,t. 

.H(X>I **n 

» .!.•;■,. 
• »).-<<• !•<• 
iHJSll .Infill 
»SSWC>i /Ml ■ 

MJ*:tM i.*ta:% 

4>*K* <• <'*:u«*o:>. 



KOJ • 



■ •ci. 



til iSMKif .*.llW 

/•• xn.\h ik» mi 

III i^lKIH I'.CfJJiaii* 

111 tMWCl. ■ •*■ 

• •» ;:u^<r» •>»«cju 

■ ■» iMMrt r»;* 

1M .4*4"* K i>**»0.'1 

H* i«>»:»> ii> «>;i 

IK »»30XM i»tM4)^(t 

III ^IIKU 4lM 

*H taidxii .i«t 

in ■ 

4?/ Ma&KM mttra luti» 



111 


»MI*d»f.i 


•* 


Ml !• IHIM *JJ1)»f IVMI1 


Wtt'M 


H#l«|l. 




In II F*i umI uiljat 


[Milk 


•llXlltl! 


• i 


lr**i ii- t*t i?»iil *l* 








* II* 1 1 L ■ *■* 


111 


tlllUI'il 


•J 


«*». 17 1-1 ■ afCl'EIJ'll 


Ull.L 


11.11)1. 






i;i 


*rl;llMll 


• r 


• 1 >•* II * Illy. 


* I'-. 


11.1411- 




3IIK i.l lilt 


13,.* 


tl»t»<.,.| 




•ai ;*fin i« niim 


!-•- 


.i«mm:i. 


■i 


•1 II IP 4, 


Kl.l 


it r/ 






III 


U<M*11ll» 


•i 


'•*> .i: p :il lint .fi, 


•HCii, 


.■.<♦♦*• 




11 .ill* Mil ■■ *3, 


.■1 


MIIH4 II 


♦ i 


HI in pttiii*«i 4:;<in 


-;»*.. 


I*. 1*1*. 




r/a qp l« i-t il*n a(iH 


«I.L 


•tMWOIftJ 


•t 




*»t,l 


•ill 




ISO* Til 7B*1 








U' '1*11 «i'|*< ""'III 


•MM 








m 


• lll«T<»II 




M> ■•» ;»t»n»*i .inn 


•JMn 


*J.I»I* 






5, ••1.1 


ittmwii 


ii 


III *l M*I T 


111 






", i»» i:t «*-j| 
•«- ii*ii.»tii 


tm 


iMW 




trill* l» *»l III v*i 





Mill' 




e*t» t* Hi III CO'***" iftll 

H4 i»»«inn» in.* .iik 


«•• 


• ■titum 


.i» 


Hill M tll L l 



■.■:... " . » ■• 
3Hlhl| >'U 
IfrUhu j^*ii:ji» 
'.-::. .... ji.'*:,'. 



Mil M*d|<M i«,li»|i: 

*i* au m ti tan 

*ti iMMik *•»'.?♦;■ 

■ :■ l:-jil. i ihr.ii -i 

*« KIMlii itl.Fm 



MHJlPf rJUiJII 



» til.* •(*>(I^1I 

*■«.■ Hililil 

•uiivi »i*Miii»i.i4r 

*.•!,» »«JMC(M»^lll> 

•iii. i «in«e«.-(«iT 

<*•.! N 

1*1.1 •• 

111. I 'lD*«ll 

*>-•.■ int>t4 



111 ( 


«IKll» *l 


Jl 1119 


It 


•X* 


II •• 




1* 1» 








11 » ■ 


Ii 


»>*[• • 


• Ml 






>1«ll 


• I 


»i« mi 


11 H |l 






*■!■* 


■ ■ 


Tl IP HI 








*»M lUi 


1*11 1« *I ||HI| 






VII C«k* 


11 Mill 









l««*l II Hill' 



.11 .. *•*)< 



. r. lum I J 



isimiNft* 

•M3M1* UIHtMiftl 
JMKrkl .11'Wl lil<1 

«*>»*)• I J If I. 
|»Ml*. . Il*r"»;i>l 



■ Ji IMlM 



« um 'i iiiiuji 

U «r*> 

tii«;a;«PX» 



,1' I1HMH 



■*••■,* 


IfUfliPI 


mi iiipiiiii 




ivihllKl.it 




•Wl.l 


rm- ■ ■ 




l«*.l 




r» i» 


•^••a.i 


Ihllj-tlPl 




III 


iiltallKl.lt 


lit IIMI Ifiir ni'tH 






111 t*llll 


ill.* 


"«ll* 


M II 


Ml 


rn.irm*(i,ii 


«*-» Hi* LIU HMl irMlll 


III 


• Hi1lliCI.il 


Mr K*» 'Mil 1*0 UIM4I1 






(mi -• imuii 


*ll>l.* 


'»*«".» 


IIIIK t*«PMl IiMi «l|l *»H T I 






l*|l tJkHl* *l«* *lrJ M 


tll.v 


kilitiDl 


1* Iiii il*i*:i. it*' i.'-n 




i|«il 


IINIn ■■!* .1*1 Kill 




«**ri*,94.it«iuiP 


t t*» *lijr|ii 1*1* 11*1 IH«II 




11*1/ 


PIH1II ■!■• Mil 1*11* 


IH.I 


U,>tL«l(MI 


IFHII "*Li Ml.ll CIhU 




HUl* 




•111.* 


IHN].)irttiHi 




i|4 


II* M*«43l.*^ 


Ml till 1*11. 



«M>?|I> iHdMMkl 



111 •* *a. .(tlMCI t« 
III |IM.**)*I Ifim 



«4Mmu i«47m:» 

3MUM9TI lOKtlll 

«MtMt*C tll7UII 
MillM t^MltV. 



(Ja»3M»> lllPNII 

jf»w*. i»iet»;, 

«9ja0»ri l»l 
t9997»* ill IV I. 
• I7IUII IV<«t,:7 

«C»li»t« .«l*<»*l 
CHIbli •♦*> 

<eiimn nil 
liniMi *ii*s?:i 

1Mt9s)ll it*? 

;jo:«>u iS». 
4aj»i^i/ ..iM^r. 

MNtii ll'l 

aa»J£it vlrsooM-Mtc 
Qtomtl .:>4i«i 
J04o9iar irii:tri«Kc 

CiUWil mill 



:tt>73l> iliriau 

:mi>m, .timi. 



mm, 


PfU 


*».M..<tll 




ml.i 
iii.i 


nai.tt 

Wllfl 


.ii^.i 


HTrfB.l 


MrM.-lliP 




- pi. 


.1,.-. 




II*,* 


■■in 


,.it.. 


l.'lll.l 


M/t4„j.r> 




**1l.» 


nn.*4 




IP 1.1 


.*»* 


.iKiT 


■HV*l 


.%*?;«-"" 




l«l4l 




■4*41 • 


■Jl 1 Oil 


M/*g.>*»/r 




"i*l. P 


•19».tJ 


rlVlfl 


Hi 


H'hMHIi 


■ MH* 


m.i 


rt 




iii.i 


■if in 






144 »»»»M 




i.n.i 

III.! 


ii. I* 

Kll'i 


»iit". 


m.i 


linn 




l'2.l 


V'lllt 

■ •in. ii 




Oil.* 


fl(>.1|**l 



»»»ll IIII 



iJtlM ^••t.-«iii 

m mum... 

IH-i M 

1*1.1 Ht.OCI 



mii a« *tt »* 
•j *ii i*i mi m i 

M 11 

MM M 1*4 11 

m «*i *•* :nMt 1 



.»» ipfitn ic*ni 



*ii w :n»M ii«.r 

r mil iimi until 
it smir t »•« 
• . i-i* >:»i 
- in *(»i iii.i i*it i 

lililat «•! firm t**H 
r ll*li 



•lit. Itlti 

Mill 11 ill* HI ■>« 
141 111. Ill IMllll 
11*1*11 111 II '1*1 



Mil 3B la? *• 

in inn mil iianii 
i«*«i -'- 




i mw i itutta* 

CNMIPI IMC 
i ilirllH 



*.•!■ I 111 1.-44TJ 

Hi mit.ilKi.i3 

vln.i HHiT 
MK*1 

111*4.1 1 it I. II 

•an. i m»,n 

tll.l *r*{1l« 

Mil*:.* J /M>*riU 
111 *lT**TI*tl.lt 



_ IV*(HCl7* 

lal. I hki litu 

•I MHIIi itliill. riai 

Ml IllriCI IMllll »f 

•I Hill II III PI 41 



: : Ii 

in! minni 
lit i»i»i itm 4M 



in i 



• in 



M Jl 

■iii i(tllHil 

l|P 1*t*l Mill Itllll 

mii'Mit 
•• if 

MH 111111111 

Ul 'H.l Hill 4«H«I 




Vatl mi il*|i*«tll« 
1|l*« 1KIHI* 

• ■ 11>»li:l 

1*1 Itti't f-MlvlP HaCI Jail 



KJIM91 
ICtliMT 
MllMC! 
M0lj*lT 

wim:i 



M»IMH 

:mimii 

Ntldll 
9431X4-1 
Maiaiit 
MfliM'i 
MIIKH 
4tJI?Qfi 
MlltlJI 



HMH 
110CJ1 
II IMJ 



.«***• Iflll 1*1.1 1 



04MMII' I 

MMHI> 1 



*1»ll.tJ 

Id.**** 
♦ I.M 



tisoiaam 
:i:m.-ii 

■ )3M3U 



»T3I**1|I 

**3iJav. 



UMMII1J4I 



•M04H4I 


iMIIllV 

lllllMMUl 

«P'1 


• 111.! 

Ill 


inii»i:. 

• MH 


utmn 


piKiManaai »:• 

Mil 

IIIINIWJtl 
UMNNIIII 
KUNhllH 
M*l 

*.SB*»>1 


-»!.* 


"I*.l|t 


tlMDMI 
•MMI4I 
JMIJIK 

IMMIt* 


Ill,* 
•M.I 

Ill 


■l.l Kill 

lt.lll*tl 
*«.lll*li 

MH*M 



M| l«l I ••**>■ »|<1M «WHH 

nail IMllll nutlir *»)iili ••in 

lll***J It IHKI 



■ « Itliir 
IK ••Mill 
ir »<•••.* | 



It MAC*) 
*U*»>1» 

)tJM(it 

UMPIIl 

K1I7I1. 

Jiiniu 

aCtlll/l 



7*jgi?:ii 

•irill)i 
c-a-ija-n 



OiMtr 


**H 






4»dltPH 


-'■ 


j94.it: *i 
ItllOCH 


... 


*'i 


M4I1MI 


..i 


•*MW»1 


.111 


MMUIt 


'Ml 


IIIIMH 


«l 


IXIHIt 


-.'* 


tjn»m 




jumii 


-.■• 




Ii, 


IMJUir 


!'l 



'68' Micro Journal 



37 



REGULATOR 
PROBLEMS 

by Peter A. Stark 

The power supplies In S-50 systems deliver 
unregulated power to the motherboard; each board In 
the system then has Its own voltage regulators which 
reduce the supply voltage to the required value and 
regulate It. 

On some boards these regulators consist of a 
discrete circuit with one or more transistors, but 
In nost cases boards use three-terminal regulator 
ICs such as the 7805 for +5 volts, the 7812 for + 12 
voits, and the 7912 for -12 volts. 

I have several times run across three-terminal 
regulators which oscillate and produce strange 
looking output voltages which disrupt the operation 
of the board and, in some cases, the entire system. 
In most cases, these oscillations can be stopped by 
bypassing both the Input and the output of the 
regulator with 0.1 uf capacitors, as close to the 
regulator as possible. In some cases larger 
capacitors may be needed, and perhaps the best 
method Is to use tantalum (not electrolytic) 
capacitors of 1 to 10 uf. 

Most plug-In boards have such capacitors near 
the regulators, but some do not. I have run across 
the problem with some DSO 16K memory boards, which 
have four 7805 regulators, none of which Is bypassed 
on the Input. In some systems these boards will 
simply not work until bypass capacitors are added. 

It might therefore be a good Idea to look at 
each three-terminal regulator In your system to see 
whether It Is properly bypassed on both input and 
output; If not, then soldering small capacitors on 
the bottom of the board, right at the regulator 
pins, might be an excel lent Idea. 

Next time you have the motherboard taken out of 
Its case, It might also be a good Idea to add a few 
bypass capacitors on the bottom, between the +8-volt 
unregulated line and the ground bus right next to 
It, up front In the 50-pin section as well as In the 
30-pln section In the rear. 

If you have an extension card (which plugs In 
between a board being tested and the motherboard to 
bring a board up above the others so you can get to 
It for testing), a few bypass capacitors on the 
extender board might also be worthwhile. 



BIT Bucket 



word's worth 



P.O Box ?W6« 
PtliM. Ttum *S7J1 

til 41 331 92W 



f^rwt, tit) 



in (*•■ LilUr to • TM.fi 

t M4 oi mtfil oooollooo *oos4 ruaor* ibot tooro «** • rtlitlrolf Lu-0» 
44X1 alttft nbloo via ootcrlowo for iti ooftviro tboft. I* /ut, rumor 644 It 
tbot e»li eleb if*l ntM 1 pbotoeepr -mcbiaa nfelafa w*0 tfrtlltblo 11 tbo 

•0*1104* tv tbw pMffroM «f «opyl«i <j*e\OMoUtlci, 

A Cm woofto Ml, maothm nMT «rt *». TMi llM, to* fT«9**tM 
WwoM o» t*»l to* ooaboro or Cblo oostloulir olub 0*4 toko* •*> • oollootio* 
UtMtT XMmir aMtl«4* t* «r4*r t* »W m44i»»C. o pnfrMot«ry 3hm«l-C 
OMltlw oT vtlo 1 HUM oclo llo»ooo4 4l«trlbotar, LOftaswotlf. tc mi i 
«J«r i**«w to to J«o» w*o moo 4*i«4 to *wl bio 0*00 oo too era*, otwlouoly, 
tboy lotoo* »o iprooJ t&io pr©#ri«t*r* yropoo o/vw*4. I boor ibot too* **oo 
oot ibot ooct or tbiac *• towir bwllitio boos*. 

4* wbot ooo I 4o obowe UT 9*»to o ri ioilf ootblog. It lout oot rot. 

low ocoor vn«K vitbl* ■ f«w oojri of tbo llm I o*9*et«« lb. I ipoot 
oooo um» «loou**l*4 oltb 07 portoor* obowt juit to* wo *bo«ai rooot to tbl« 
orooioK. v* ***1*** t» «■ in** hoi rul u t *«4 ;iut trit w toot* 1* too 
two****** tbot m bt« 00*04 rlppo* off. 

»m Lfeo Tint tilt *1M* t Itu-tol toil *r*J**t* I nit tut I Mtllf 
■Mtl to qolt too bOOloOIO. J 1*4 bop i i toot o* Wf llborol upf— **11«> 
*1**4 *rttb tbo lM«t orl4*i J **uU 0000401. u4 tbo tlooor* ifrort u ptvtiM 
W oootooovi oil* *9— iu*#*ri wool* oioombp* 00*00 00 to ood<*ilr bo opiro*) 
rroo tbo tbioToo* uoo, >u* ■** 00. 



so foTr I ooro oetatuir loot auito 1 bit or ooaor 00 0011104 c ooooiliro. 
To* wit or odfortioioc boo oopo too* him •*» too pi 000041 . loooaioiif \n &b* 
»>4liolo4> «**o 1 woo trim* to oiioo *4o til «»«r tbo ilioot lut.od or Ju»l 
'«•». I iyot b«po4 tbot I oo«l4 ooublUi «o*fl mm 000 «xc«*« vltb atbov 
ero4»ati, porlofo ovoo • troo pubu* ffpooti Htr*«T. 4*« t os lo too pOtltloo 
or bolivt plppod oft, wU)i 1 ui do miUb| kit »ty if ud oot«b ;*s «t It. 
M^rbo It would*' t tkOTO rolt 00 boo If your olub tt«4a h t booa h <1*o*HI apoo *o4 
6LiUn oftmt it. I boTO o^ror itoloo OAftblo* mm r«a. 

bocuMilT* I io*'t or*** oartoao4, rot. Tou teo« woo vow ***. if «, 
■otoo ur Ctffof**** t* r«< I tno* who r«u «r«, oloo. fa 0*00 row bovM't 
4VO1004. t 000.' t 1U*« fog *iry mb. 4ut. uotn t cot tbo proof 1 ■* loovlaa 
for, ro* «t^^ *• trootwo o* flirforootlj rr*o V atlor 9MOto«*ri. row wiu 4*t 
tbo aoao o*o4 ow upcocoo. Tou will 401 tb* aoso owmprtf tb* om 
Tbo 00I7 liffwrwtMM will bo to* VltUo curoo I prooouo** 9*«r uytblH I 



Sluarol*. . 



Editor^ Note: This Is no Isolated happening. Unlike 
many other groups, ours has Ifi the past not been known 
as software 'coplers'i However, I have from time to time 
heard complaints from software vendors, of this sort of 
thing happening. In one particular case a software 
vendor did start legal proceedings (n a situation 
somewhat like this- The case never came to court as the 
group 'attempted 1 a mass recall of the copied software. 
Also the guilty Individuals were known and In two cases 
their employers severed their employment, due to possible 
adverse publicity (they were In the computer business)* 
How do I know? I was a technical consultant, hired by 
the complaining company, to determine If the software 
copied was actuolfy the 'real thing 1 . It was. 

Since the advent of the color computer I have seen an 
upswing In this sort of Illegal practice, in casual talk 
to some vendors It seems that they are becoming more 
alarmed about software thieves. It seems that the 
expense Is sky-hlgb to prosecute such a case. However, 
as has been done In other trades, a mutual cooperative 
fund could be set up, by all participating software 
vendors, this to cover most or all of a large part of the 
cost In a few well documented Instances. A good stiff 
Judgement would certainly slow down this practice. It 
was noted by the attorneys In the above case that If a 
club was involved, and the officers had knowledge or even 
should have had knowledge, of a thing such as this going 
on within the club, they also could (as well as the entire 
membership) be held personally libel for any damages 
awarded by court action. Now that can get pretty 
expensive for even the Innocent- Being a member of most 
clubs also entails a lot of responsibilities* And sure 
could flatten the pocket book In a reat hurry. So If you 
are a member of a club or group that steals <coples> 
copyrighted software, you are In fine to have your wallet 
depleted. 

I constantly hear complaints about software thieves. 
However, If the offended parties don't do anything, then 
there Is not much can or will be done. You win just 
continue to be robbed and have to smile about It. f will 
do all we (68 MICRO JOURNAL) can to help stop this from 
happening. But It takes more, It takes a cooperative 
effort on the part of all software vendors or a very 
expensive action on the part of any particular one. 

Even you hardware manufactures have a role in this 
also. The day has arrived that It takes more than Just 
a computer and allied hardware to hold position In the 
marketplace. Without good software your days are 
numbered. I don't care wno you are or how long you have 
been 'In the business'* If software becomes so expensive 
that your customers can no longer afford It, or you 
competitors can provide better and less expensive 
software, ypu are In big troublelBIBMBIBIBI 

68 MICRO JOURNAL is planning to host a software and 
hardware manufacturers and dealers get together. Not 
a club or organization, but a getting together and 
trying to Iron out some of our problems. Just because 
another company Is your competitor does not mean that 
you do not have some of the same problems. No users or 
non-commercial tyoes wll be Invited or allowed. This Is 
J ust an opportunity to share coeeon thoughts and 
discuss coMon problems. If you desire to participate 



please let me know within the next 60 days <by July 1st) 

So I think we all should realize that If we steet or 
copy (little difference If we give It to someone who has 
not paid for the right to use It) It will someday be 
either be too expensive or no longer available. 

It's up to you! 

DWW 

DIGITM. PtSARCM CP/K~6»t 

Motorola has reached an agreement to sell the Digital 
Research CP/M-68K operating system for 1t f sM68000 
based EXORmacs*. 



36 



68 1 Micro Journal 






Also we were Informed that LSI. a past advertiser In 
68 MICRO JOURNAL" hes also reecned an agreement with 
Digital Research to license CP/M-68K for their new 68000 
board for the Standard S50 Busa The LSI Standard S50 
Bus 68000 CPU card(s) with CP/M-68K will be advertised 
soon. The availability of other software such as CIS 
COBOL* for the 68000 will allow many popular 8 and 16 bit 
microcomputer programs recompile access, bringing to 
the Standerd S5u Bus a wealth of time proven 
applications software. 

CP/M68K Is actuelly Implemented In *C* and is shipped 
with a complete C run-time package. Estimated cost Is 
In the range of $350.00. It maintains file compatibility 
with all Digital Research operating systems. Files from 
other 8 and 16 bit microcomputers running these systems 
can be transported with no conversion to 68000 based 
machines running CP/M68K- 

In addition to Motorola and LSI there are other 
popular Standard S50 Bus manufacturers who will be 
offering their up-grade to 68000 hardware packages witfi 
this system standard. We will keep you informed as they 
near release. 



GimiX 



PMtSS HEUEASi 



% 



**r<« ?a< tVf) 



COfctfUW SrSTVtflCIHTflt 

• vwr oun two. 

Pl«l I*044» 



Conpv'.or IvitfH i**t*r a'*>ruoto* t*» liiru.rtui of 9Tll£»4r| for 

CtlASNAPl. a* ix.» »mi t**:;.». allo**a triM «(tn.ikirliir iMriUll 
*"», * h " „*ZTl ia Z. fl{t *»*'*»»r« a.ataa. *» .,9: tic. t > *,;*». uaor 

t>tOrot*c*, Ct"A5Ntl( a»»b a.]»" ••(>, irtir L« <•«/• *.*o ai» w lt*a«Olta J«»| 
7m initial rolaaa* ar PT&JWM l» tar 3VTf< 3/C4 tMMUri. ovt 

• O*"** »*t Ob .1 »?aO t« •••»!»):« fW MHir popular *l1«T<|«-»»Mri l||l«N. 

»*** mh ^CLI* oOO S2«!f A oiilo** 41 <7ia of ft4«J -i:i 6* rt4ulr*4 in j;j 



•>ii>«tkp» .>-«•-.**. o,» ;i i»a F«r ▼•en ar:*K» *•»*: tftya « 7)|l| i^KOI 

I .tic. f£« a ftrOVntf.ta^ lectio* ce* r * t ip •» tW ti ,,iral a . or 
irotao.ofl;? H*'*. ic» up ^au* l»<alr a :a. AdO»ti*«at oaa>er/ •■ 
>rtaO to »W*a, li;tp4trf a* ari<*« hire wart. 



6T|*JK*H rH»! ft » e>,» it l»o for Oacft «f:»K» lata: t*ua « rH* aFatoa 
••m.I .tic. 
fo-"|/o 
AsoPort 

EYMla**!' • Bu'tl*! •■*}*( f»«t*r« MJ (>« Ul*l «.«1 On aii|lo-.iaor 

ayaiaaa *or tiMtll. oSplla Pa t^lT, »»v tar lut arethor til* Or iimIm 

t jirtcia'* Or |cu ■ilm «,»<,. ua an Ilea I 1 ! t «•»• »aao a won while ■ .art 
i* lb rrairoiot 

CT^A-ShAaC •!•■» ProviOa 10*. r«j n |i tanofjis thai ylll c« | r f*tly 
•P* r «"»* »» '-t* *|tr». .«r.ve,r| ;yp^-»hf*j, ooaoafia Mm idlthf, ,*a 

init.lV rfl60«*» l; ♦•iCaPO*,. 

Ct«AJ»4*C i» *ot tftta»Caa ar eti«f,tltlo* I* UMfVI*. It data not 
4f»tr« bf ** tm teaaa of flit. «<v« aorj not offrr Paaanorb pralaciJa* Of 
o',r>.r iktnti -f a rm:.»,awa toitl^iir i>*l*«. Kt.at ^TWtAHtll ,i «a a a 
li ft»« FLIJl wain * Uri-eQtt v*v 14 a*. tuttLU oofs***'* ia j (uUuiiiir, 
• u^ti.t jaa.»i4 aavfrnr.nl. 



ClKll TO UTH00(JCI nit Cil Ml 6«0» SYSTEM 
■ I \CC Boo i A *P79-l€/a 



Cl«lt »•* r,Hf Ml 44c* BftMtM r«tti4r*l Tn# ae» onx Ul C^ bvaril, 
OJ-b Cm Ul •»l«l*MH#i *vltt*t4t«(iit opfniLnc ■f*S**4 *"« inivlnttnt 
WO pra«**a*r tjaara). Th* CPL ovarii [«iiui*i bi|,n-«p«rg «ior) to wwff 
D«4 irob»r*n »aa] ivIWUIIt taok *«|tcfeia]| on iiitfrr<pti »m op*rajtla| 
oyttcai £41 It for cuft«r a>4!«« cttrauvap^t, and a Tieir-of -O^jr clock. • . ' - 
bailor? |>ac4up. to pravvot oyaio* craaora ciua«d by •ttor» io 
ladivldual vaara proaraao, mo ayatvai bab folly proia>eial ua*r atodra 
nil t)l«|al Inotruclioa «ad ov»l of rabt# aMf«ory rt/trtact trjic;ptn| and 
triii proi*ciio« 4 

Td* irtL** btrflairo al»> itcludoi 35*1 b»to« of otitic HAH, a *rm 
•>ia (ubfarnaccodJ S.Jl 1 " aaoebbator t>ar<l di«4, a lu ayio {*r> tor** \ cad ) 
*.J>" floppy dlaa. aad J I3~?]2C t/O porta. Pto«r to provided by a 
coaat4at.*oM4|t, lor ro-ro-ao^attt aupplr >nn itiflitlvoi roborvi capacllf 
to aupport a fully oataoetod oyaiaa. Htrdaira option* Include wrxorr 
oapaaaloa to 1 oogabyiOi aon-valatilo baicary. backup HAW. idditianal 
■ aaa atariB* rrapartiy, ted I/O porta for additional tat'biiaalo and 



tlva UKlt^llH* Q5w» oporoc itvi aroiooj lacluiloa tria doougsor. adttnr aad 
aaaorablor. 4vti1abJa toft oar* lfidudot 6*3TC0», PASCAL. COfJOL aad C 

Too tut priea for a 5 uftr ayatoo io 19.999.S9- Oollvarr n froaj 
acoca la 34 cloyo A. 1.0. (\Pbrt aiodala »r* avaUabla. 



tnr fjrThrr nnoraatl^n eoaucf Hi -hira Dos at <113l »27-*5lO 

Ctxlt inn a\ »r* irt4tp.*r«« of OlwlX Inc. OnrUo. ti . ©5.9 and 
f«tv;crto iru ir i'«..ru or ^icrao^ro *> %i***4 Co.-o. Ovo «oiam. la 



•"LI* ani * ,»Lfl trp i-Ma*a'.» af Toimital tyatma Coatkltiat*. Jaa 
tfHt:»at[ ia « traaoai^a «r Caa^utar Irftoat CaaLar. 



-r 



r a* • 4«»a>riavf«>a 



B | Ml> ^» i 



f 4 b tamyiai Io »l«*aart to a««aui tbo r»atIa»mo af tk« 1BC-1, 
a dial caattalla* cavd la? tM taiai C«aajot, Tt j^ *pa*i «aa 
lovolofa* ««4»4 in« toota paio«d vltt* a*»r avctaaar^l «01«1 «aW )0X»1 
dlat caettoll.T bearaa (ar »bO S>0 boa. 

Tot lbC-1 «i*a. olthar I'll or 171) trot fWf etOaa aM to* aav JHCV21M 
dato a«P4tator. T»l» b»tf (■ laoa aapanatwa taaz. popular chip aat 
aofar«[«ta aauT lo all Aittial. Tha vrtta pra^aajb cirrvtt oa ikt XSOl 
la oloo a}l 4i(ltal ae a* Voard jdjuotooak* ara r*Ctt| T ad. 

Tfca >oa t" la tha aaaa a la a a* Iba Kodla lba*4 <ootr allot mt>4 la 
eoapiaiolt ioaP*llblo »iU it wKac tKa to£lo tbo^t Dial Epiaa^ad lo a t« 
roa la »a*4. Tha aoori atraPta altnor o 74 dt IE pto > aw „ tfKM. 
D-ac«1a faoa 17 1 a thru 7717* can fro t»aad itviot froa 7k t» 14k a/ oa 
\o*?4 aata«rr. 

Ha aro a"avoloPi*«- a aofti^rv yackota to allow moalap IXZf altaaol 
tha aaad for tataadad aaatc aad bin aatanda^ »*aH. f\XT« artll ho 
hoolad ualiva <*T T4»l»6-c aonjtar. 7>a n>01 (a (M?illMi viah lha 
9Uy* caovoTatana daval«Pa« hr othara wtion rasato* ulty 5"«t Tjranoatf 
laolc, 

Prica af f-DC-1 la t*l.» *lv4 IS ahlpplKt 'Saiaf Had- TNo prlco 
Soclttdaa hara Word, aooaaofiaol taa aochaka, aa4 K?:iU chip, tfa 
cwriaatly haoa owollohlo ac«aa»orlaa tvcfc a4 a plaatlr caao for tba 
hootd. nCl'tl aaairollar chlj.a. 1 Moa Ut*nd«d aaolc hOK, aad of 
cotiraa PA9UCX. lao put oda Ivr artcini. 

bo oapatt IO ho ahlo Co opt**** for aaoaahl^ of \*m Voortf far pavala 
or>a do 04H foal auolifioa to ••••*!.* a hoard of ahia tr»o. 




»a*td I. Voaha. Praaldaat 

P 1 | *#♦*♦. 
|>}0 U+t i*ad 
Ha» PlovaoCh. <u 4*4*4 
old !»1 S7» 

■FLI1 li a iraaofeoit of tocNUcol ttaiaao C*o av ;i«jita, lac. 

CO» hClTZEror^db 
■U»t. ftOUTC | 

LYOrdJ, 

I w lqi>i<. rem m p*:cot**TiHC *»oonw chith TEyrnu 

STOHftCf- > IN TO^-OdJ t>TE.Ht*t, b#V- K Ft* Th* CtVC* COfdHjICP. 
IF VtU U*>1 tHRi 1 COULD CWTAIM SuC« ft PIFOUlPPi IT UOUlO 9C 

catflTLv nFnuciMTCi> jp you could nr nt j« on t«c htcntr. 



oom'$ rrttro 

DON Uf iratHKHHP 
OhHEH 0* PON'S /"HOTO 



68' Micro Journal 



39 



i would uka • > y**r *jtJK:rl|H<0» to tha it UiCftO JOURNAL e«hoci« t*cto»o<H, 
I «i«o w+nt tm cotwolrinvnt yaw 0*1 the Quality Of Jho, ufinri r«v«>t. After* 
<#*d,n<j the r*X4«W of !*»■ OynlMll iuittrtftltr (I*,) .»» Oqt>« MM! »<•*• OOO) 
I <w\«tly OoudjrM • «opy. It op**atod 4ft advd^titad and »»>e axuiw nl«o« »at 
Ct/pwrO V> nr»i uta nit i*i eaodirywtg i«* FlCXOt Cicttog «/*) copy utit*** fro 
rJitpioy the Me crHt«A utit ««m 10 PrtM*** the» during d«»K U«n*r*r. Ohth 
a oped diMttMDUr iK» tot) «■■ t^tvHi. 



The builitifl board, c«!lid SIT BUCKET r it 
located in Portland. Ortion . It currently ru«i on 
*» homeouilt 680? |/it«oi undir FLEX. The irttea 
it writtin in T5C XfiASlC* which h«i been modified 
CO handle ioat of the r ecul t er i ti •• of re«aote uii. 
Tht t«ttee> runt with 3 ShuMrt S 1/4" S33D dn*et» 
And a Cuitoi built tiictronic dit* dri.t. 



frit* i Wilesn 

:UI [M«n $♦., API J 

Con Itotd, C** «J#J? 



0e»ar ro*. 



rhonko #<y Owbl i eru nq «y article;. a F)o>x Baaaxi 
Flaxityla Print &vate>ai*. 7h# Mrtt na*»e I hid tnat vokt naa 
pooliohed It in tht ^rch i aaua *aa a taleonont coll *ra« a 
-•adar #rdn Georgia *r»o call ad to t«U aoout how ho> coulo 
adapt tha lam in tha article? to hit cooputtr. It n 
•atie'ving to bm lOlt tO halo io««0nf laprOvt tr.air- FL£x 
ov*tae>. 

BUT. trt«ro> | V # proOlo* -»tth tr.a article? a« 
p*"inte?d. your p«ita-up O«rion le>#t out t -»c llnot. Thejy er • 
tne> lmti at **.Z3C to VA23F in SETP»IN1\CrlO. Tha *i«aina 
!»/>•« erej 



A23C »6 *1 09 
A23F 39 



ATS 



1 *OUld 'PprtCUtt It l# /OW ■OClld 0riftC this 

correction in tho howt available ia«va o* *68* mcro. 



For tr»a rtcdrtfi thim irror **aa found lirit by 
waylay Kot'ett o* S«iV«tcMy«n, Canada* 



ilncar#1 v. 



ran net, r* Ora^lef 



The Purpose of the t»ttem ti to iirvt at a 
l«n«r«l Pu/roie bulletin board. CumntU) uttrl 
nay read ano leaae ■timii on the iritia, Alto 
a*ailao1e art intormtioA filet lothe* 6S i>ititir 
FLEX and OS- * notea. etc.i. Planned 

i a* rovtatn t 1/ addition % art ont -*» rriviti Mail 
(from Srttem Orirator to a uiirl. i<«tio Heir 
fjJtt. and poiiiblf a oo^nlotdablt ttt of FLEX 
utility ano othtr Protrant. 

Tht i/itftffl runt 24 hourt a dar* with 

in t »r ru* t ion t occmionil U for toftwart uriradti* 
backu*** and othtr r>* in ta inanct. Tnt iiitio 
officially ttarttd ortratine on Januarr t» l>8}. 
and hat batn vtr/ luccmful to i *r * In a tnaot 
Ovtr 2 ton tht of o*»tr«tion« thtrt i,*** ottn o*tr 
2100 (illiri. with *.uttt a ftw froat outtidt tht 
1 oca 1 d ta li n t arta. 

Tht t/tttat *hont number t a <503) 7*1-6345. 
Data ratt it 300 baud on 1 > . Uitri art tncourattd 
to laava cooainti or tuittttiont at to 
inrro vt Mtn t t • cai*liiflti. etc. conctrninm tht 
iMttt. Thttt •otiaaot ^oulo bt tddrtsstd to 
p Sttttai Operator* to itturi tr>at I ttt thtt. 



1 hopt to h ta r f ram 
Journal reader*! 



a lot of '68 Micro 



"^ct- B^ w*e \\£ 



Gimix 



re tuf«ntM't*i"iJkci * c*iic*do iii.«o<t* 



PPUf ILLIlSX 



titfevriftie 



Hick fientene 
1825 N.E. lidth 
Portland* Oreton 



>?;3^ 



CtUlI IMHrtxcas l»f l*** HI M4» CfV eoa^O aod 0*-e 9*t III. TS* m« CA» toJ-« li 
m MfaKM Mtlto. aP«^ir»vally intM0«4 r«r n|| wilt «vilti^t«r, «<tll-ttttiM 
oP*ratlat iyti***. OS.o W ill 1» a« *»•»«- r*s 0*-a Lj«i) Xl lk b ^ it^rt tull a«««4it«A* 
or U«« r»l lift* of l*t> <*•« CfU ^»rt. Tha P<icv for th« COaOtnotlae of Ch» bctft iisd 

tortvift u KiM.Oi 

tvill •» ■ NUl.lt?*r U1 tleavtt beard and wlllltlnt M|h.*7«««. M.|hi^!an.tlly 
lalle. trw Ol III 6lC9 CPU OoaCd anf-tfic** l^« ■'f«ra««.ei af t*tt 2 HNt t,JtW fry 
6-o*ldlot 1^ roW'ti a* hit*~IP*«d ' I b>M'«Lc*>«S*eo*4 ) 0K> block lra*tf*M (nm 
or bai^tOn »*«»rV »f»d NO 4«>((ii <i4*eH at \h* Oil IrtflllLltol 



3 a»r| St'ial I«ttrf«c»} tad td*t<««*d m^motl r.trt*t*t<" »lth 71 »««atnti tnt •• 4 j M ^t 

■ lXri»vt«l. Ika *at«-« ■ulo«tt1ca:iy arfrl trlctt W* **ft»<\i1oa muim ti* a* *»**■ Mi 

tna ttiaoval a** d*«lc«t Ow> at dl »-• «««i^ll»ri. Tht ^ aa aa* y Mfwrrut ttU< a»r B 

if riot tat ttwri Ittato. Tha a«c«a^l ttlritulaa alia* t»»a lrt9tie< of awt^r^tioa 

■asB-y #«farta*at (10 ar«to«t •*»• uw*<% or ttttt'a wf*»*j tnm Mint act*l»01 0/ 

taaUMr). «^na ev^t^tloe cU Kot»«t iMrit:« Jala «f«a pn'* 1 * rraa aaaiftcatioa 

*ailcn aawlO Ifroat tN ««tl-8 ayaU#1, a«4 • lMr{,in tlo«la 4l«p fxnctlo* f»f H ri'iri 
Htu||l«| <a* a laaividuil tnar tatii ciinooi arrocll«»i tlMf wttrt or la»«a|. 

H»t beard a«4„«*ilt tiw aiacutlea af eariJim. Illtltl 1 n • ^#VCt « aa k Troai cptanin| tht 
aytttv 01 aanltorlnf l*t*ri- W btl 10 Ina OfOO 0*4 It' ra»pqnt# to thtO ith«»« 
|ntlriMtltr<» ttw.t« tM 4W» 10 :.■"•■ *P It * ftt-ata in which It data hot «-tlfroad I* inr 
t A lt»^ u ftit aod own ba r«ML). If tha a*>«<»tlar dot* <v9l r#ip ■■»■■• t# ait tfitarrMOt 
altAl" a d*a«iria t\a* ( l^l ala<. tftltal \Aa beard »tttt* tht 0*01 l«ui«^ dtvlcaa ea 
tha Out *•>• not rttot> a«td atltrtt a ••*« I bt rttat «t«tar. Tha ilitH caa than *1*m 
do«« V>a orraadtnl t*** ano <-a*w«w weraal s »*f»tiM <«thdr a#ll*f tatkt in «at 
tfracladl. Ifclt aito llfelio IM laadth of Dm tMt l^trrrvati can r«*«in ***„•* tj • 
«it«o. orovtOtlna «iifi froa •••»,M tha tyitaa tram tatk *-ll*ht e « aad t*.>*lcl*d othtr 



To rurtbar Pretoct tha tyotao fr«a> tht wtan, tha CW board? tuBpertJ: «*Partt« iiar 
tad trttoa ■ttll*t a *»W tk»toa»i|a tw1Vc«U«< to tht trtlao atala In niK«M to 
intarrufrlt bad tyttto fSMIl «al)t. Caitbtn fu&cttan* Old oaaor# irtat can only bt 
tccttMd la tha arot«a tttlt, prartAllnj, vntwlheri xaQ t«caa»«a. 

Hoc loclwaad on tha now C*V or* •«. l«ro.i< tuil ftMKtloa t^aa^r^ty alboi 
(NClt6|i|) aith yatr and outooollt till yaar/daylj<h| tdtflntl tiot ctrrtcllM. KH I 9 
MrOtthPOd tto; %otr> wttJt bdtttr? bOtiMt tt«nd«rd. to P'atkde P'aattlta) tlalnf 
r^tatioA*. a id IQ PT* wlW d ••»'«♦ 460 ■»* b^tclttoa I.OCT^t* UN a*«a (.Hltlner 
It luflvtH. f*a odelllalor it tvtily y**+ r«plactab;a to a*a v jd* •*■*+* tlo* Oita 
ri»MM n ctti l TVS (Hi ooa.l. Tho aiA«lt [riT* kocaat witl actaal ?!* at *r at t**^*, 
with • u*ia«* Of U ap a pad lata l*t t/ttao aad^tat tbdfd *t •"! on* t.oa. laflwtrt 
■ wltBM>»a It loolaajoatod »P *al*etln ft tha «P^r a* la*»»* httf if M V EfJICV «adtr 
Xfrrdwora «# OoflMl^C COOtrol. 

»y taklao td v tn*<* af tht faalwrat af U«« Qtf 111 CPU. OJ-9 CWx lit tt rattar, M r« 
owoor) *rn«lant, and ■ aa«-a ■•♦**, oy)t I ->»i"*J1t t.ltttt n l ba+rtl.ri a/ttao tian CB-9 
OI II. fr** wM«h it |a darlitd. whllt r«tti«i^| eooplttt toft^ara «oat a t ;>u ity , 
throu|haut It tnhanc** by tha ooovry le aooor/ pn* *na tht ivtvitlLC ttih mtthla.|, 
whllt Iht nooort frttt-lbvlat a*d I lUitl L^if^tiofl ftaptni pr s it<t tn* ifttao and 
ladLvlfwOL Wtarb F>«*. |«« othtr, » fl rooL« l)Un *i<^ll .a •*** Or* w-IU prolfitid 
t« OrarOpI \aoa*r|*a- Haawy oaoplna t« ?■ wpwiti and l*a oOHtty to ) B ot oa*vit B m 
o*n-a*oti(wOat lia a^aaiM V f tfricltai an wa n f wtJlMtttan. (och tatt »aa to 
•llocttad o fwll t-t or ibf. nl* ao oparttl^f lyttr^ ornrna^d la In* talti adir Sa * 
tpact. Fwtwa alant fv OS-4 Onx III laaluda a* oP^toaal hara^trt *i»Jl* »ttr*1fti 

Sa%«ditr. 



Paul Bureqd 
1 Pleasant Bay 
Uinalpeg, Manitoba 
Canada R2k 0C9 



Dear Don: 



Enclosed find a modem program which I wrote for fLEX 9, 1 
am using this program to give «y 6809 access to BBS's and 
time sharing systems. J am using the modem board from Data 
Systems 66. which 1 think 1s just super. The board construction 
Is of high quality, solder masked & sflk screened, and It 
went together easily and worked first tine, with the help of 
a friend (J. Gary Mills), ( out together the following circuit 
for auto-answer: 



WS3 
opt* 150 k+o 




NOTE: this circuit Is not FCC approved. 

Use at yn.jr ow n dl section. 



This program can also be used with any modem which Is connected 
to a serial port. The equates at the beginning of the program 
can be changed to allow for a different port address, as well as 
tfte ACIA Initialization codes. 1*e ternlnal I/O is handled 
from FLEX, so any termtnal wh1c* works with FLEX will work. 



Dear flr. Milliea*. 

t as orittni thit letter to 
existence of a nt« o8G9 bated 
iritie on the wett Coatt* and alto 
yoti on a fine ma»aiine' 



announce the 
bulletin board 
to compliment 



When the program Is called up, 1t asks for a file name to store 
the data. One must be given even if there Is no wish to Store 
the session. The user can then dial up another computer and all 
tr>e session will be saved 1n meflory. ]f the user does not wish 
to save it on disk, then tne linefeed code will delete It and 
return to fLEX. Otherwise, the back -quote will cause the tarmory 
buffer to be saved on disk. Both of these characters ^rt 



40 



'66* Micro Journal 



charitable In the equates. You *U1 then be requested to enter 
another file nane to continue. Hitting just a carriage return 
Kill return you to FLEX. Once the session 1s saved on disk, it 
nay be listed out or printed. 

Sincerely, 



(^Ji^Sr^^ 



Paul BureQa 



opt **o 

a 

• VMi praar *m alio** a W\±m • uaar to dial up 

• a ••• <«illbp«r«J or tiaaahan'"* a%ata* •no 

• dOMrtlMd HtH« Ion ««itm; of tha lil M 

• «•* M n«tl|«|rv to alJaifata v^«Mf«ttd tvat 

• at the beoinnina. •"<» tna ar»o oi tha download. 
* 

• th^t prporaa Mill *i*at Prwt »or a Mia naaa 

• Altar a rttponct, It Mill op«n that **\m 
a for ^ittn*. II t*an -h 1 1 *er>o • 

• carriaga riii/n out tivu tna port 
a mot to tha aratad ttrai<i«H. 

a It than procaada to tr«n»t«r data bataaw n t^a 

« port end tha lifaim), Any data coamg *roo 

a tna port >• lavad m •■■ a ry. 

a Upon tyding bao>arO ovata, all tha contango 

• o* aador r hiU taa dunpad to tha f|)*. 

• I * * LF EltOO 'e*d> I* t-tiad, tha praqru 

a tiltt and nana o# tha dil« ia w t tt a< out to tha lila 

■ — altar «««- 1 1 1 ivg tha fll», tha uMf it 

a praaptad lor another Mid htia. which *a 

a agat gj va. to ant tha prOQria q i va a 

a !<!■ called, than after It ia OPanad. 

« typa a inHHaed to dalata at. 

a 

• lahan tha — POT v bwlfar aaeoaa* «ull. a 

• control I la output to tha a ruts ■ pari 

■ to cauad tha rPOOta caasutar to atpp 

a aandlnd data. I* irow dial-MP caawta- 



a «ahl<h h*a tha control m. To raatart 
a tha incoming data «*oa tha raaota 

• COiaovtar. a apaca aa tant Out. I« a 

• dl Mara*>t charaetar Puit ba «a>t, 

• Chdnga that aa -pall. 



"OC 


K1W 


rou 


•r-iee 


addraaa o« — iaa AC (A 


» T» 


acrao* 


■au 


AC! AS* 


►1 


©MO 


HCKOT 






itvi Ovriar cna*atta 


DOOM 


LIHMFD 


cau 


•OH 


proor aa t. it character 


OOOdj 


MtaMP 


cau 


•on 


am init valtia. 








' data b a. ossr* baritv 








4a a« 


alo «or ■ data, not parity 








'or 


iti>i«t bv I* irtSiiad e* a* 
• 13. 


COOS 


tWaWVJ 


sou 


•COOS 




CPJ3 


trrtir 


cau 


•cow 




COlC 


nnHi 


10U 


•COlC 




rr:s 


PUTBMI 


cou 


•CO IB 




CCTO 


PBTrOTht) 


eou 


•era 




DdOo 


7*0 


ECU 


•OdOd 




awo 


nt>TEdS) 


tou 


acojr 




CD70 


■WTF1L 


COU 


♦coto 




CMC 


OTAT 


rou 


SCOSC 




coo* 


ino 


COU 


•CDoO 





rajTCfl fOU a 

• OutPvt a charaetar to tha 



01** S4 


r^fc 


CHI 


UM 


•ClaOM 


chvca atatua lire* to 


Ola? SO 


oa 




01 Td 


•3 


a * ri#4y to •end arvot' 


01 •• 77 


fa 




•CO 


Cut 


loop until raa4v 


014* 59 


07 




PtA.1 


A 




"laD 07 


F7I0 




1TA 


AC1A0A 




O170 SB 




•1ST 


•T« 







f»ar char 



oin o*oo n»u 



ipr incoaino charaetar* 



ot7i »• r?cc 

0174 «ta Ol 

oira 77 re 

0170 to F7CJ1 

O170 04 7T 

0170 01 O* 

OITF JT O? 

oioi »r 40 

0103 » C0IO 

oi«* iojc to ooaa 

0108 27 01 

oioo ?• 

ottx m od lya* 

OlM *V OQ OC40 



••7F •«< 



caicn atatua 

<ur |ncoMln« CDjraitar 

• • na),, thai lti»f 

ottwrnta. «a>t that c^a 
ol« Parity bit 
Cr**« #«oji don't Uva liha«a«d« 

■CO laHiT 

OTA ,»♦ otharuit#. n«* it in ■ 

Jftd ruTOdt and OutOut to tha taran 

C7B»V PB£MMAlC.FCt Chpci, to aaa »♦ ***r 



LOI 
LCAi 
• Tl 



fBITB^dl^r'Ot adjuat m i*>d to pra»a 
3.X baang callad again 









••*•**••*•••* 


**+•+++••»• 


•••m9»»m+»^mw++ + 








a 


Owtdut control tO 


mtop lrvcooaiinQ data 


0l«O •• 


13 




a 


LM 


**n 




control $ 


OL«* OO 


4 If 






000 


OUT CO 




ouput control 


ul-C 00 


Ml 






too 


0#«00 




cKici #or ai«v raaaining en 


OlBC OO 


10 






ooo 


DtPVJUV 




ouav tha dutlar 


Oino 04 


70 






LM 


*B20 




rr-atart Ouaping «*|th Mic 


0ld2 OO 


CO 






B.,h 


OUTCJt 






01A4 lOdC 


oo 


OlOi 




L D* 


OTdJtf. 


^t*» 


run bu* 'ar point ar 


Old* !• 








nil 









duap bu«lar to di«a 



LOd 


■a 


clow tha lila 


OTA 


. T 




J Ort 


*»« 


tall #lar tO 04 



OlM lOda* 00 OOTd 

0100 JO OO 0O2B 

OICI Si OO 01*3 

OlC9 •* OO 

OIC OO OdOO 

OlC* 1034) FFTtl 

OICC lOdC 00 0O13 

0103 2b ro 

O109 3B 

OlM •* bC 7* d3 

0IC5 Od 

010* 

OICO 

OlC* rco 

0S2d OTdAT 




rCO.FOt point to *Xa> 

STAdJT.POt gat at art o« tant tK4««#r 

,•- anO Qp*t Char 

ga va charaetar to rVEl 

POJOJR ml il mrrer 

T£>B7.PUI »n<i cortlPui till 
OLOCB*! bu««ar pw«tv 



an tar l|lariaad»:y 



oioo 






01 oo 


04 


OS 


0103 


• 7 


rTtx 


OlOS 


hA 


0* 


010? 


9> 


rTtc 


OlM 


Bf 


CC70 


0100 


%Q 


OB rooo 


01 II 


M 


00 0003 


0113 


SO 


00 oooo 


on* 


00 


con 


one 


00 


ceio 


01 IF 


M 


oooo 


0177 


01 


OO 


0I2« 


77 


TO 


017* 


so 


OD OOOO 



OI31 OO 
OlSd Ob 
Q13* d7 

013O 00 

oi3o m 

0130 31 

01«1 M 
01«7 OO 
0143 00 
OlO 00 
Ol«B 70 

0141 OB 
01«C 7C 



OHO «IOO 

IDA «3 ««CT PC Id 

OTA ACldOd 

LDA OACIAtF at acia attrib^tab 

■TA AClde* and »Pt UP icia 

i Pi h*TBEM0 oat taat aaaay location 

U[Al -»?W.< laava aoaa tr+m *pmi 

■ Tl fOTraV;t ( PCr« •!»■ vn* a* bultar lecattan 



« B«t a lila nix 



LDA 



IMJUFF 

acoeo 

BAVO 



C033 
OS 



Of 

OD OICB 



COST 
COOS 



LlAI FCO.d 



LDA 
ltd 



OfTUBA COtl 
■ chach tar am 



0191 00 


coot 


OlM 37 


1ft 


013b 00 


eoot 


OlO* 01 


•O 


0130 27 


*P 


OI3D Bl 


OA 


• ; -* 7* 


OS 


oiat 7t 


COOS 



P*"<^Pt ay«ta* tarainal 

• or f i la naaa 

Oo gat thd Charaetar* 

gat Hr»t char o* Una bu^'or 

chacki a« cvr 

• ■It a I ao 

paint to Ola control block 
and Oat tnat lata n*mm 
a*it a I mrrar 

•at f I la *Or .TXT 

Ops* «or _»it+ 

and i at CLCS opdn #iia 
a. it i« mrror 



iTdJrt.FTJH point to atari O* aaaaaoa b»**a 

••OO prtht out a carriaoa raturh 

0VTI3B 

CXTTlOt chacb tar irvaJ «or irput 

chaei, aKBkaa 4ar input 

continua 4^-mvmr 



taftJOV* mr>€t tha «tt 

a 
il «or input 

•TdT chaca ta**alndl atatua 

ml do •othing if no- input 

IhtX fo Pdt tKOt character 

dBdOrOT chachr if ajpacial Charactorp 

OCaat i# bo, vmwm dona 

B* lh«TO LT BfeMBJ OUtt 

OUTCN 

m\ m IB ftCTUAM TO FLCl 



I0OIK0) DCTCCrtO 

ot^RNSTEhN 



TER 



TANTSd*tY 3 LTTj 



913 TULftAOii CcMTA^ 
MAMSSTAiJCOM a>vt«UE 
C4»t T3*XA< 

•OU BOOClBJldi 

T*t ^i *o»a 



*68' Micro Journal 



I think pvt com acrOBB a potantiai probl«B> wich 6809 Flaa 
vriich a)dy M of intdrooc to your roddord. 

Tho procjla* will only dtldo if 

I* You irt running a SVTF OAT, a ON* diak controller, pod Bxtandod 
oddroMin?/. 

**- your oooory doti not all roBido in paov U.o. thv top 4 bit* 
of tha 10 bit addraaa ara not 0). o.g. »ay 32K in p»9« and 
J2K in pa^a 1. 

Under tha above circunatanco*. it your fCs buffar i« across a p*9« 
boundary you will kavo a problaa. 

Tha raason is that although tha processor board docs its addressing 
through tha OAT, tho OHA controller doea not. This Hans that if 
the high order 4 bite should change during tho DMA process, they will 
not in fact change. 

Tho easy lolution ib to aafce *ur« that your FCS buffer does not crooi 
a paqa boundory. 

41 



Normally tha problem *ould cooa up where 2 tor more* 32K eieocry boards 
are in a eye tea and each has ■ full coaplement at chips. 

By che way. the flex user guide specifically states that the FCfi can 
rieids at any address. But 1 think it was written prior to tin 20 
bit address availability. 

Yours faithfully 



KJVIT 



Pa 3. 



ROB BTPMSTBIK 



LDT #RTK 
LDA ,1+ 
STA ,X* 
CHPY IRTNEMD 
BLE rCVIT 
JHP ICD03 



CET START OF ROUTINE 
GET A 6TTZ OP ROUTINE 



CO WAR* START 



KND STAPT 



David 8 Lepointe 

IU9 H. Euaveit 

Ban Antonio, TtKat 7B201 

<3121 732-6876 



January 4»19B3 



jeac Oon 

^itther to my letter of 14 February 1983, I've had confirmation 
from Mr vanada at TSC that the problem exiata. 

lie solution le not too difficult, it requirea a patch to the 
disk drivers so that they do I/O thru a buffer srea, and transfer 
ihe buffsr from the program's disk I/O area* 

xttached please find a copy of a little program which does tha 
•ifeove. 

ftspUE#i 



Over Don, 

Wall, I havi bean a subscriber to 6H-*ticro Journal <or 
nearly two yeers and I haven't ever written you to tell you what 
a great magazine it is that you publish. It really is. 

I have recently moved to San Antonio* Tex ea, and I have bean 
hitting all o4 the bulletin boards trying to find other 68XX 
users with who* to exchange useful facts and fun. Do you know of 
any groups In the San Antonio area? Just out of curiosity 1 
called SWTPc and they were nice enough to show ee around the 
place, etc, but really didn't fcnow o4 any way to put ae in touch 
**i th people. They suggested that I write to your magazine. 
Perhapa a classified would do it? 



t- 



(V. 



-»B BERW8TSIN 





UAH ¥1110 






ORG 10000 




IT* 


EQQ • 




rtDCALL 


FSKS X 


SAVE X FOR LATER 




LEAX RTR,PCR 


SETUP DMA ADDRESS AREA 




LEAX -256,1 


GET DMA ADDRESS 


iDJW 


JSR trTPP 


CO DO ACTBAL READ 




POLS Z 


CET ADDRESS OF CALLER'S KEHORT 




PSflS I,T,0,D,CC 


! SAVE 'EM ALL 




LDT #126 


LENGTH OP MOVE 




LEAD RTK,PCR 


SETUP Z*A ADDRESS AREA 




LEAD -256, Q 


OET OKA ADDRESS 


3HD? 


LOD ,U~ 


GET 2 SITES 




STD ,X**- 


PUT THEM TJf CALLER'S SECTOR AREA 




L8AT -1,1 


DSC U 




BIB OMDV 






POLS i,r,u,D,cc 


rPC 


Ml CALL 


PfflS 1,1, D,D 


SAVE THE REGS 




LEAQ HTR.PCi 


SETUP DMA ADDBESS AREA 




LEAD -256,0 


GET DMA ADDRESS 




LDT #126 


LENGTH OP A SECTOR, 2 AT A TIME 


»rWD¥ 


LDD ,1-m. 


WHERE IT COKES FROM 




STD ,C*» 


VXERE IT GOES TO 




LEAT -1,T 


DSC COUNTER 




bee m»y 


ARE sE ALL DOKE? 




PULS X,1f,D,U 


RESTORE THE REC8 




PSKS X 






LEAX RTW.PCR 


SETUP DMA ADDRESS Ap£A 




LEAX -256 <X 


OET DMA AOORESS 


WtJHP 


JSR IPPPP 


CALL ACTDAL WRITE 




PDLS I, PC 


RESTORE X A RETURR 


BTWUlD 


SQC « 




BULB 


EQQ BmEMD^RTI 




STA1T 


LDZ ICC2B 


KEMDRT END 




LEAX -WWL»,I 


ROOTIES SI2B 




LEAX -256, X 


MAEE ROOM POS DMA 




ITS I,D 


POT X IETO D 




CLRB 


MAZE MDD0LO 256 




m d,x 


pot d urro x 




LEAX -1.X 


GST END OF FEES MEM ADDBESS 




5TI ICC2B 


SET REV EID OP MBMORT ADDRESS 




LUX 1,1 


SET I TO DMA AREA 




LEAZ 296.X 


GET R0DTI1E START ADDRESS AREA 




PSL3 X 


SAVE X 




LDD eDWl 


OET BEAD TECTOR ADDRESS 




STD RDJMP+1 


STT CALL BEAD ADDRESS 




LEAD IDCALL.X 


ADDRESS USEES RDCALL WILL RES IDS 




STD IDflOl 


REST TECTOR ADDRESS 




LDD tDEOe 


GET WRITE VECTOR ADDRESS 




STD s*UHP>1 


SET CALL WRITE ADDRESS 




LEAO VRCAU.,1 


ADDRESS WHERE WBCALL WILL RESIDE 




STD ADE04 


RESET VECTOB ADDRESS 



Recently, I have moved to the Ban Antonio area and I would lies) to 
get in touch with people in the mrrnm who enjoy recreational as 
well as serious programming. D. Lapolnte* 1119 H. Summit* San 
Antonio, TX 7B201, <3t2> 752-6H76 (voice!. 

*7 CellingMoofl Noad 
MITmA*, Et«e* 

cne 202 

England 
Sth P«Dr u ary, 1963 

Kara la t*e J Sfest In m-r aooj ♦ irat i ana to tha TfliT len.-> . l*w 
si'UDo *ntcr> I t>«a la tne (■■ttttt vflitr. moVitfD te *eea&t *LE» 
co«Mi|ftot ■■ ditcriOtd long •B° * n yovr ex Valiant journal • Or* o« tna 
prqi>;#*» utocittto wltK oiine tna 1 me-Orientad aditor, ia ' e^ODSr I ng 
le jr«*<*t c«rri«g» fft^m ^mb« tvj>ir»g in lest •<•© ita o< ta-t, T»si a 

■ •char o* COda mo<ll<t»« t'n Editor by lAii'tmd * c* rr tiit nlurn it 
Olaca o' * al>aca. onCv a orm^tmfniir-mC Itria )ar»gtn ha* baar nicn«0 
J»i orctar to (vDi j owar-rorcnlrv^ IM input Df'^a*'. t^» •iniMi* ) i i\a 
la*9tS hi» Oaan aat to 110 CMrtctft. «M(h al |o*«a tha Itit word o* 
tKa Una te tie 2a Jattart lor,g. **»icrt 1 tMrib la Jikalv to tia 

■ .Hiciint <or all no-iil PurPolti. Moufvfr, it can ■•■il r 6« «at te 
ao»» othtr valua at iiiiuMv ti<«e. 

1/ oaad Hitli tna "DC co**arvO to k*«a Put* ♦ro* -Itlm th» ESltOr. 
t^an o*e anjy a,i te *n\.mr 

mbz Bcr^ftuTDeoi"" 
to inter tna *yto*#tu modi. In tMi cm, tha oricjini] cooa <B8R 
SuFLini c»n om BivH aa LJN-OUT0. &)*. ae tnat tha Original 4V m can Da 
'■a»t<vafl. 

It ahaulo bi notao tnat trie rov>tina cannet [>■ a>ada «a a 
tuvetitm*, aa tha ratvirn point n not to tna csam 'cllo^int tna 
Original JSA. Alae tM original Su^tlrt aub'Ovtlna i»w*l t>* Drni'vril, 
a« it la uaeo ml *mm*mrm. Normal ta^ainfction o* a line b> ant«r»rioj a 
C«>-r,, e t retwirfi* ti'art alr»i«u« 1 ina langth t* raarhao] la net 
*< * mix ma, +r>9 all tna uiuil aditing lacilitiaa mr m ritiimd. Wham 
walng dt ai varatona 1 thmi. \t mil Da >iKinir> to ditch, and aa.a 
tr* antira £tlT.C«iO. and o* cevrar tnara «ill Oa di ' * arancaa in 
IwitiOM, e.g. INB€^ .ay ba at ■CD43. ana ftuTFtP at SOCSS. 

for anro'^a «r»o «ritit a lot o4 ti>t uair,g tni*a particular iflito* 
1 think that thia aOOUUitler «d«U ba -all -ortn * «eia*ant »ng. 

yours sincaralt 












■ auto- 


:nsc*t 


fON TSC 


SPJTOft « 








i fcftirre* er 


W.A, nVGMES i 










MAM 


4UTOED1T 


oo aa 






sua PCs 


ECU 


SOOtt 




OBTft 






i**ec*3 


EOU 


40S7S 


use eus-LiH) 


oajsi 






rhKar 


too 


so tat 


(jam jnCmaA} 


OS'» 






IhSEHT 


tou 


SOBTI 


ifiTAA 0. *> 


laoo 






FRcaec 


ECU 


a i aoo 


•'JegT a^iE fiaacE 


00*1 






1 


EOU 


no 


• ni«l*u* LlNC LC^IOTM) 


017* 






oars 


riRstii 




0i7* TI 


]A 


eg 


a 


j*ip 


tinit 




1400 






am© 


mpc 




1*00 oa 






LIMIT 


IN* 




•ohf po:*nr» 


iaoi ec 


•M 


*» 




ce* 


oi*rg*. 


^iNcix Line TiatfiiKaree 


sad* 3C 


99 






SOI 


QVfJt 


Ar-TEH hlNtMUM 


ISO* TE 


B 


AB 


SETUS.N 


Jmf 


iNica^ 


LI hi LENOTH 


IfcO* ■! 


20 




OVER 


cur* 


•2 


t>«a»«l£ B94CE TO ON 


laOB 2* 


F* 






8*; 


"ETiJH* 




laoo oa 


5C 




OAMOC 


LDM 


SOD 


CC/N* 


taor o* 








DCl 




•DtNt TD CUROCKT CHARAC-m* 


)*10 ft 


oa 


7» 




Jh* 

END 


J«BCR? 




nO tWMIH OCTECTED 







BUMPER OOBS 

iNseas o«76 iNses^ oa7s 

OVER 150* RETURN laO* 



6lO60B7a7EiaoO£4 
8liil*000eSC0;ra2CC37C0969e»20rePasaOt>oa99 



42 



INS*>3 
NINLlN 



'68' Micro Journal 



Introl corp. «" 



««Mar>ir • » ■ 



compari*; itti *ho** tflll fHt i>c *vr tmi ?moc 

The latter free) toJfcart Patrc* in lha 'abr v er> m«i '*kj.J^» 
!**<••* th« reader with the »»r, ».*r«fc«r »•(* iM'0" t^t ln.tr*l*C 
*A th« 0«*J9 '■"■«>>•■ 4 peer Ih.rd e~ th* tf#ta|lK t -«f| «>*,« 
b*nch«*r4 ♦#. coejpeneen te WHitea*. ih'» C v th* I'-O *^d U*n ■ £ 
pn the &*£*?$> 

The fe«:t of the eetter $■ that He, Pure* fa* led to not* 
he *ee Ctf»r»r^. . performance fi«i>reB o^tomed on • 1 »|h i rSCU. 
• 4 *hi 2*0. s«d « 10 Ihg 6*000. IMe >s not e valid or fe.r 
coWtrniA s<*c«> »n tirvi of aaiorr cvdi t <**«, • 1 MIm o*00 
rs such eore neerlv •«w<v«l«nt te the 4 **>* *»0 end 10 «h« DSO00 



Hum the Cvrrtr.t r«le«ts of lntr©l-C, »fcich <a • b< t »<m « 
efF«c*em then the original version brought out • veer O9o< and 
rnnn»n« The invi on s 2 MKg 6S09* the co»»4roti»i perforeence 
ie sort eccuretely oiveo brt 

Un.» C tin the 10 «hi oS*K>C----»---» 0.3 eecende 

Introl-C on the 2 MKi 6W« ...».«.. 10,0 second* 

Whitesmith's C oft Che 4 MKr 2*0 -***. 1 5 . 5 ttcondt 

These ion repreeentetive pirft^Mnct figure*, of CDur»«, 
put en «nt>r*l> diFfersnt pinptctivt on things Chen w«s euaqceted 
► ■■> th B figures alter, in Mr. (>i«rc«'t letter. For one, \* the 
*«bil erene, Introl-C on theOSO? QMkte handily outper Forms 
Khitoeoith'e C on the Z§fl. *«co"d(>. U*i* C on tr,e 6*vVO Is net 
• s dre«et»cell? eyperior to Intro* -C o* ch* 0$P9 et ont »*<*ht 
r««eon«bl> expect. tKen the feet thai ts« e^OPO'e lt-b»i 
architecture g»«ee it e decided id»*m<ut aver the '-bit «$CQ. 

the p^^o is en eaceHont processor. Let's Oi*« it iha 
credit «t deeerirea* 



P7f?-3 REVIEW 



NCOS COMPATIBLE PARALLEL/ SER I AL INTERFACE 

My company recently purchased the Concurrent 
Technologist Corp. PTB-3 KCOS compatible 
Parallel/Serial Printer Interface Board. 
Periapt a brief historic background of 
Concurrent Techologiea would be helpful 
before we delve into the technical aspects of 
the hoard . 

While a professor st Greenville Technical 
College, Bob Ehlers saw a need for a digital 
voltmeter. Working part time and consulting 
with local engineers, he built a prototype 
meter; however, it waa never marketed because 
these same engineers were looking for someone 
to market a daisy wheel printer control board 
baaed on the Motorola 6602 MPU. Several other 
boards followed in quick succession and today 
Concurrent Technologies supports Bob and six 
other employees. What about the meter? Well, 
maybe someday . . . 

Thia experience led Bob to addreas that 
nagging problem those of us that use tbe 
Motorola EXQRciior® development ayatem or 
systems designed with the Motorola Micro 
Module board face! and that ia how to use an 
inexpensive, off the ahelf, serial printer 
when Motorola software supports only a 
parallel printer? Until now, memory overlays 
and/or software patches have been the 
atandard approsch to obtaining a hard copy 
output. The PTR-3 board answers the need for 
a a imp I e so 1 u t ion . 

The board provides many pleaaant surprises. 
It comes solder maaked front and back, allk 
screened with component identification, and 
gold plated edge connectors. Thia is pretty 



much atandard for a pr o f ea a i ona I 1 y produced 
board, but to find every IC residing in a 
socket ia most unusual and quite welcome. 
Those of us who troubleshoot and repair 
boards find that it may end up costing 100 
times (or more) tbe 24 cent cost of the 
defective IC that is soldered to tbe board. 
It is infinitely more economical to test and 
replace a socketed IC. The interface to the 
printer ia through card edge connectors and 
ribbon cables. Again, standard; however you 
still have to find the right connectors and 
ribbon cable, right? rong! Packaged with the 
board are two cables. This means that all you 
have to do is configure the hoard and provide 
the desired printer. So much for the board 
cosmetics - lets get on to the layout. 

There are three main aectiona on the board. 
These are the bus interface section, the 
Centronics type par a lie J interface section, 
and the US-Z32-C/20 mA current loop serial 
sect ion . 

The bus interface section consists of address 
comparators. and data and control bus 
buffers. The board is shipped configured for 
hex address SEClO. Thia is the standard KOOS 
printer location. The user may easily change 
the address of the board by cutting copper 
runs on the foil aide of the board and 
replacing them with header jumper blocks 
wired for the desired addreaa. 

The parallel connection is for a standard 
Centronics interface. To use this interface 
aimply configure the jumper selectable 
options sa described in the documentation and 
connect the interface cable supplied and 
you're ready to go. 

The serial section of the board is interfaced 
through a ribbon cable (also supplied) 
terminated with a 2 5 pin female 
D- aubmi n i a tur e connector. This ia the 
standsrd RS-232-C connection. There are eight 
standard baud rates provided, from 110 to 
9600. At the higher baud rates, serial 
devices require handshake protocols to 
properly handle data which is coming in 
faster than the device can accept it. For 
this handshake function, two different 
protocols are provided by the interface. 
There is the hardware handshake which is the 
CTS line into the board. This line must be at 
an RS-232-C low level if the interface is to 
send characters to the printer. There is also 
a circuit to support the DC1/DC3 (XON/XOFF) 
protocol. If the printer being used does not 
support either of these protocols, the baud 
rate must be set low enough for tbe printer 
to completely handle each character before 
another character is sent down the line. The 
serial interface can also provide a 20 mA 
current loop port when proper connections are 
msde with the on board jumpers. In thia mode, 
handshaking ia done with the DC1/DC3 protocol 
only. 

Additional jumpers are provide to select the 
computer bus interface signals. Jl selects 
VMA, VUA, or VXA from the EXQRciaor bus. J2 
selects IRQ, MK1 , or the 6809 F1RO to be 
generated. J3 is the memory page enable line 
for uae in a non-standard system 
conf i gur a t i on . 

LED's are provided to show the status of the 
CTS line or the state of XON/XOFF if that 
mode of handshaking is used. This LED is not 



W Micro Journal 



43 



uaed in the parallel mode. The other two 
LED't show th* state of the tranamit and 
receive data linea. Theae LED'a are not uaed 
in the parallel mode. 

Several limitations become apparent in uaing 
the PTR~3 board. Firat, if you try to uae it 
with a DEC LA 120 , the CTS line signal from 
the DEC writer ii inverted from the aenae 
needed by the PTR-J board. You muat correct 
the line by uaing a unity gain op -amp circuit 
or other meana to do the «ame thing. Bob 
tella me that thla will be corrected on 
future veralona of the board by providing an 
inverter on the board ond a jumper to select 
the correct atate for CTS. 

The other problem involves an Epaon printer. 
The aymptom is that only every other 
character la printed. What ia happening ta 
that the Epaon printer ia deaigned aa a 
•ingle buffer receive line. Normally, most 
printers are double buffered. What all thia 
meana ia that one character ia being aent 
while the laat transmiaaion ia in the receive 
buffer. To solve thla problem you must cut 
the trace on the foil aide of t h«- board 
connected to pin 24 of the UART and connect 
it to pin 11 . 

tn auamary, the board ia well designed and 
reliable. It is warranted for 6 months and ia 
aold aaaembled and teated for $349 or aa a 
bare board for $64. 

Al I en K . Thomaa 

Union Carbide Corporation 

P.O Bo* 5928 

Creenvi lie, SC 29606 



LAST MONTH 
we raised the price of Quality. 

THIS MONTH 
we tower the price of Admission. 

Our HUMBUG"* Is unquestionably the best 
monitor around, but not everyone wonts to pay 
the S75 it takes to get the very best. So 
for those of you who will settle FOR SECOND 
BEST (and still be head and shoulders above 
anyone else's *BUG), we Introduce 

MICR06UG- 

M1CR0BUCT Is the guts of HUMBUCT crammed into 
Just one tiny little ROM. It will work with 
anyone's CPU board and give you features the 
others only dream about. It cost just $30, 
and Includes a hefty manual with the source 
listing. Come Join the club* M1CR0BUG" Isn't 
as good as HUMBUG", but It's better than 
anything else. And that's no Buncombe. 



Star-Kits 

P.O. BOX 209 
Mt. Klsco, NY 10549 



** QUALITY SOFTWARE ICEDED *• 
Standard S50 Bus and Color Ca^uter 

For the past few months we at the 0ATA-00*f* Division of Computer Publishing, Inc. (CPf), the parent company of 68 
MICRO JOURNAL, have debated expanding into the software distribution business. Many other magazfnr- have been doing 
so for years- Presently there ore many fine examples of software that has been developed by YOU our aders, that will 
never see the 'light of day' unless someone, with enough exposure and willingness to continually advertise, runs with the 
ball. 

Software is the 'backbone' for the real utilization of any computer, ours ere no exceptions! Realizing that there will 
be some conflicts, with other advertisers, this has been no simple decision. However, since day one the foremost 
concern of 68 MICRO JOURNAL has been It's readers! Therefore, DATA-C0MP DWFsfon will accept, for appraisal, software 
that runs on 6809 systems, games, utility or applications programs. 

In the past there has been too much software offered that was not quite ready, nearly, but not quite. We will strive 
to eliminate that element. But right up front we tell you only that we will do our very best, nothing more. Also we will 
strive to keep cost to a bare minimum, while securing for the author a fair return, In royally payments, promptly paid. 

Of course we will expect, no - demand, that the author keep the product free of errors (bugs), and maintain It on a 
prompt and business like basis. Also we shall require that authors be willing to furnish 'source' for those programs 
that Justify, by price and utility, Inclusion of same. The lack of source code, property commented, Is a continual 
complaint we hear. Not all programs will be sold with source, but where necessary, we will Insist that it be Included. 

In some Instances the progrom may be smatl or short and not Justify Itself as a 'single' sale product. In this event 
It will be combined with other like programs, and offered as a package. In that event the royalties will be split between 
the various authors. 

If you have software that you feel will qualify under this program please contact the proper person as shown below. 

Standard S50 Bus 

Don Williams 

Bob Nay 

Color Computer 

Tom Williams 

Bob Nay 

Remember, If your software has any problems or •funnies' - G€T IT STRAIGHT BEFORE YOU CONTACT USIMt Also get your 
source code in proper shape and well commented. There Is too much 99* code already drifting around. 



DATA-CO^, PCB 794, Htxcn* TN 37343 
A Division of CPI 



<615) 842-4601 



68' Micro Journal 



ERRATA 
to 

MC14M0Gf2 

ADVANCE INFORMATION DATA $Hi£T 

lAD^BTSI 

in ****>g «w Bvr* uwaa a naaoad too**rm v* tatt-cnac* giogranv 

vwtntwn** ^ <p*a <waOiab*m < wi#ia PA) ip*7) and not PAOIP»0 Tns 

p »w» w» ««m«v mo** it in* «i«ia am* aao»am oi *• 

Mtiaaadaft MM trV"«** 0m« Shaat th» MMffl M7111 hn AMO 

nmatd *ftd tp4c« F«n 10 1 wo* p d «■ e*u mn 

Th» CAflngs tff*ttB oniy fttOW uwng adgfr md n 
Tha Otarg* vwfl nd «T»*ct tftn ap*rt««n q1 th* u*ar-a 
aim ix> ttwnH unuii 



Bruce Cox 

2287 Granae Hall Road 

Dayton, Ohio 4543? 

Hi, 

I need some HELP. Does anyone still run CP/68? I em 
trTng to find someone to correspond with. I am running 
a 6800 with SSB and FLEX and I want to get up on CP/68. 
i am keyino In alt the code from the books, buf if someone 
has already done this It will save me a tot of time. 

Is anyone submitting 6800 articles anymore? 



■# 



J. m 



— 



...... 

J] 



m 



FA- 






® 



wicduiTiPufi ***«• n»M mni »a* 



Editor's Note: Sorry Bruce but we get practically 
nothing for the 6800 these days* Have not had anything 
for the CP/68 system submitted In over 3 years- The 
6809 and soon the 68000 are the popular CPUs now. We 
would still run some tape and 6800 for you folks but just 
don't get It. Sorry. 

DMW 



SJrt, Do r$u him it anyon* <mfr.ni or H pl«nnii^ to rnaha 
mtT dl&k Contrpllar tor rh« fNS-tfOCJ 

Wttt « aajor lhva»toant h\ 6* DSOO fUMt er\y**. M lt'% a 
Va*a to riavw lo j>o»a anotfiar Inrotlatfnt In *" drlvat, 
**p*clah) *l»h raducad C«*McllV.*>.<t| have «»«r 1 
• «9*by»» of kyitaa. »Ottaar« on tfrlv* 0. and Mrep 
appllCatfcww toftaaro on ONLY dHvtt I.) I muU use 9" 
dlili o«vfy for ao»p«t«bllli p occaaa. 

TnanM, t/John Mlar«to 

P*£» Stylograph ll QWEATIII fha bait l H ** ia*nlt 

John, rafaranca poor card o< ma 1*1. I do not %,*&* ot 
anv $ m controTJar lor iha color aoap«ttar, at tho 
praiant tlaav I naor ruwor* of a controller, for rha 
coco, thar ■III nandta bo** 9 and A inch diitt, bv*t oorMng 

ROM* 

It ifcotild not 6a> too hard td Intarfaca tha 8* dflk to 
tha prasant ooard, fe^T. tha ROm would n««o crvaiWlna* 
Ho*awr« allti *> *ra<:» drlva>« you can gat right at ^BOd 
FLIDI ^actOf^ to • dl*k* 

1>NW - - - 

CLASSIFIED 
ADVERTISING 

Need good Engineer or Technician for 6809/68000 
petrochemical projects In well established company, 
In Los Angeles. MDJAVE SCADA SYSTEMS 7100 Hayvenhurst 
Ave., Van Nuys, CA 91406 (213) 902-1611. 

SWTPC: 1-MP-8M2 8K Static Memory Board S50; 1-NF-32S 
Universal Static Memory Board (never used & Unpopulated) 
S85.00; 1-W-S Serial Board S25.00; 1-NF-P2 Parallel 2 
Port board (never used) $85.00; 1 -Per com CIS-30f Tape 
interface $35 (never used); 1-Glmlx Static Memory Board 
32K supports extended addressing fully populated $225 + 
Craig Cafes, 805-962-9163 Days or 682-3597 Eves. 17 E. 
Carrfllo Street. Suite #39, Santa Barbara, CA 9310f . 



HELP 



Thomas Mason 
2402 Audubon Road 
Akron, OH 44320 

HELP 68 Micro Journal 

I am looking for a 6800 source listing for a terminal 
program that will let me transfer files from memory to my 
mod and from my modem to memory. 
I have a Percom SBC/02 without mass storage that I use 

as an enhanced electric typewrltei not really word 

processing. So far, i just run my terminal straight Into 
the modem for communications. I'd rather keep my micro 
on-line. Percom, as you know, has non-standard port 
assignments. 




and WRITE to a FLEX* diskette, 5 or 8 Jnch, 
with 0-F. 

0-F Is a new and unique program, written In 
BASIC09™ that performs the following 
functions, and comes complete with source. 

I . REFORMAT: This module formats a disk 
that can be read by both 0S9" and FLEX*. 
Eight or five inch selectable. 

2. FLEX.BAS: This program does the 
actual read or write function to the special 
0-F disk. Also It has the disk format and D1R 
(0S9) commands. All selectable from a user- 
friendly menu. All selections are Interactive 
and complete I ncludlng all necessary prompts 
to the operator. 

3. BFLEX.BAS: This program allows binary 
programs to be exchanged, as FlEX.BAS above. 

4 . DIR: This module (menu selected) allows 
the disk directory to be printed to the 
screen, whMe In BASIC09. 

FLEX users can read, write and use the 
special disk as any other FLEX disk, provided 
the FLEX directory Is not allowed to continue 
beyond track zero (too many flies). 

$79.95 



DATA-COMP 

P.O. Bok 794 HIXSON* TN 37343 
1-615-042-4601 



'68' Micro Journal 



45 



Business Software for the 64K 




COLOR COMPUTER %f^M 



Data Base Manager 



Part I. 
Part II 



Single Entry General Ledger 
Church Contribution System 
Balanced Billing System 



$99.00 
$99.00 
$95.00 
$99.00 
$99.00 



Integrated 
Business Software* 

Accounts Payable 

Accounts Receivable 

General Ledger 

Inventory 2 

Payroll 



$295.00 
$295.00 
$295,00 
$295.00 
$295.00 



64K memory upgrade, including installation 
ask about our Co for Computer add-ons 



$125.00 




UNIVERSAL 
"ATA 
RESEARCH^ 
|NC. 



All Programs Require Flex and Extended Disk BASIC 
•requires two disk drives 

2457 Wehrle Drive, C-68, Buffalo, NY 14221 
Phone (716)631-3011 

Dialer Inquires Welcome • Call or Write for Free Catalogue 




MAG Tape Drive/Controller for SS-50 Bus 

IBM-Compatible 

Can't decide? If your tape drive question is "to buy or not to buy. " your one answer is SOFTWARE CONSULTANTS. 
We've got a super IBM-compatible tape drive controller from the leading manufacturer... and you can buy one 
directly from us, or, well be your service bureau and do your dumping/transferring for you. Lit her way, you'll get 
a great deal. 



GREAT HARDWARE 

Useful 

■ Allows two way data 
transfer to and from your 
system to the big minis 
and mainframes. 

■ Software drivers run 
under OS9 Levels I and II 

■ Mag tape device that's 
usable for hard disk 
backup under OS9 and 
as 45 MB of sequential 
access mass storage. 

Powerful 

■ Usable with any SS-50 
bus computer. 

■ Reads 8r writes Industry 
standard 1600 bpi phase 
encoded tape. 

■ Controller card features 
onboard microcomputer 
with 8K buffer, Phone 




■ Standard drive is Cipher 
Mlcrostreamer. Others 
can also be used. 

GREAT SERVICE 

Fast 

■ Normally in and out 
within a week. 

* Quick turnaround service 

(I day) for rush Jobs. 
Reasonable 

■ Our low rates will 
surprise you. Call and 
find out, 

■ For dealers too. Let us 
get you out of a jam. 



Basic system price $6800. 
us with your problem and we'll get down to business. 



C 



J 



OFTWARE 



ONBULTAWTB 



6435 Summer Avenue • Memphis, J7Y * 38134 • 9011377-3503 



46 



'68' Micro ,k>umal 



OS/9, FLEX, COLOR FLEX, UNIFLEX Software* 

SUPER SLEUTH DISASSEMBLER S99-FLEX S100-UNIFLEX S101-OS/9 

6600 1 2 3 S&9 6602 programs enafjang, me user to anafyt, mearfy tnd Aal#rOe l*tw lefteia) otnect oodt. win «*M to 



Tha program 

Z-80/8080/5 SUPER SLEUTH DISASSEMBLER S99-FLEX S100-UNIFLEX $101 -OS/9 

T*i vernon Of SUPER SLEUTH procette* Z 10 B0S0 5 Obfeci code M ihe 6800 i 9 

CROSS-ASSEMBLERS each $50 3/$100-FLEX each $60 5/$120-UNIFLEX each $55 3/$110-OS/9 

TT**e progm/na and meoTBi enatea (ha user to provs 6800 i 6805. 6502. Z-80, 8080 5 pngrerB m o^pnal (cyme) The TSC rneoo a**an**» « n**«n*fl tor Fl£x UNIFLEX 

and tha OSM a aa arufcax * regunaJ lor 05 » 

6805 and 6502 DEBUGGING SIMULATORS each S75-FLEX S80-UNIFLEX S100-OS/9 

The** proo»anw enatta the user to •nera£t"*y enafyze, mooty, e/*J detug (14)6805 and 660? e&iecf coda 

6502-TO-6809 XLATOR SYSTEM S75-FLEX S80-UNIFLEX S85-OS/9 

Thii program enac*e* the user to Uamlato 6502 a*aerr*j«er aoda <rtto 6809 aaeenfce* coda, noang meted axtvemeot 

6800-6809 & 6809 PIC XLATORS both S50-FLEX S60-UNIFLEX S75-OS/9 

TfWM programs enable ihe uter to iranaiite B800 i a&iemDje* programs to 6809 mnvmo^ca and to con*** 6809 program* to poM«on .ffdapBrarfBm c o0« and data. ub#>q PC. & 

U, X and V as basa regaieta 

UNIFLEX SIMULATOR FOR FLEX S100-FLEX S110-UNIFLEX 

Trn» pfogram coaNes me user to dedug UNIFLEX assembler programs u**»g ihe TSC DEBUG and other faciilie* ol FLEX 

OS/9 SIMULATOR FOR FLEX S101-FLEX 

This program arables Ihe user to debug OS 9 essemblir pogrom) using Ihe TSC DEBUG and other 1ac4rt«a ol FLEX 

FULL SCREEN FORMS DISPLAY (6809 X-BASIC) S50-FLEX S75-UNIFLEX 

These program* enaMn the user ro deine end geoeraie letUe-dr^ven Tul^ecreen dtsptay and dat* entry programs 

FULL SCREEN MAILING LIST (6809 X-BASIC) S100-FLEX S110-UNIFLEX 

These programs enaMe the user to dekne and mamtam mailing ^ratorwnteo data oases 

FULL SCREEN INVENTORY/MRP (6809 X-BASIC) S100-FLEX $150 UNIFLEX 

These programs enatte the user to de*me and m**tan mventooes and *0ude ruararcival materia* rvQuremert ptonrxtg 

TABULA RASA SPREADSHEET (6809 X-BASIC) S100-FLEX $200 UNIFLEX 

These programs enable the use* to generate and mart**? tabuar •ompuiator* schema*, prowtog a s^vta use* snarlac* and sophisfacatad repoH-gerwaoon. scmar to 

DESKTOP PLAN jTM Desktop ComjM«ngj 

TSC BASIC/XPC UTILITY PROGRAMS all $25-FLEX S50-UNIFLEX 

These programs enable die «ser «o resegu«f*x« or cross rerwwc* amj Base program and gene*aie IPC Beac son programs 



Prpgt erne *i source on do* apscrty a»z%. side*, dwwriy. type, ovrv^jfer S 

Dateeed owned manuals prov^ted vMfh aa products 

For vtSA and MASTER CARD grvi account. «»P data. P«nne US kinds °"* — add 5% 1 1o% toretgni tor *r*ppe^ 

Open Purchase Orders tor D and B rated dents onry Caa or wr*e tor catalog and deatet mfonruton 

* trademark Technical Systems Consular** and Mcrmv e 



Computer Systems Consultant*, inc. 

1454 Latta Lane. Conyers. GA 30207 

Telephone Number 404-483-1717/4570 



A COLOR (DfVRK TERMINAL DRIVER 

TERM Is a new and long needed terminal driver 
for those cofor computer users who have developed 
stinging, red and watering eyeballs! TERM allows 
you to switch from the CoCo keyboard and TV 
monitor to a reel CRT video terminal. 

Think what that means! No more 32 or even 51 
characters per ir no, that are so blurred that you 
must guess as to what sorfie characters actually 
are. No more squinting or cussing. Sounds 
great? Well TERM gets you away from all That* 

TERM Is called from the CoCo as any other 
program* You then type the 'RETURN 1 key on the 
CRT video terminal keyboard and TERM configures 
the CRT video terminal to the proper baua rate 
and you are free of squinting and guessing! To 
return to the CoCo keyboard (God forbfdJ, you 
simply type In the command EXTERM from the CRT 
video terminal keyboard, and you are back where 
you started from, squints and ail* 

TERM functions from Oata-Comp FLEX directly 
and requires only a standard CRT video terminal 
(any el cheapo will do) or a deluxe terminal, either 
works Just fine. The terminal is connected to 
the serial port of the CoCo by a standard cable 
and connectors. TERM does NOT function In Radio 
Shoe mode (must be FLEX). 

If you want the luxury of 80 characters by 24 
lines, or more, depending on the CRT video 
terminal used, then TERM Ts a must! To order call 
or write: 

ONLY 119*95 

DATA-C0MP Division, CPI 

5900 Cassandra Smith 

Hlxson, Tenn 37343 

(615) 842-4601 

FREE with purchase of F-Mate 




W Wfti 



Small-C 
ONLY $ 25 



PUBLIC DOMAIN SKALL-C 6409 $25.00 

PDS-C09 available orUy in Plea forme, three S" or ooe 6" 
diek. All eourcea. binariea, mod documentation on tbe 
diakal Add 55 cor bardcopy ol simial. 



MLddle-C 2.02 atill only 


$99,00. Middle-C alio available 


for DOS69D. 






fcCmKirCES FOR TDK 


PROFESSIONAL 


P&OGCAMKEA 




v/Any diak 


feooka only 


Tba C Profraaviaf Language 


$13.00 


$17.00 


Software Toola 


15.00 


17.00 


C Mocea 


17.00 


19.00 


A Pertable Coaipilar for C 


10.00 


12.00 


Tb« C Pun la Book 


11.00 


13.00 



Specify diak aiie. Pricea good until Juae lac. Overaeaa, 
plaaae add $3.00 per order • $1.30 per book lor air sail. 
Add $1 bandliag for Vita/rfC. io COD or porcbaae ordara, 
no excapcioDa. Texaa reaideete: aalea tax ia $0.Z5/di«.k. 
51 od booka. Late it cuatoser iofo bulletin included eitb 
aoy order (or aeod 8ASE). Flex<t»> and DoSe9(t») beloag 
co TSC aod SSS, reap. 

word*s worth 

P.O. 8ox 28954 
Dal la i, Texas 76226 

1214)321 9285 



'68' Micro Journal 



47 



All C Compilers 

are Not Created 

Equal ! 



.> *■! 



We didn't cut any corners 

when we created lntrol-C/6809, 

and the benefits you get 

really show. 

Introl-C/6609 generates object code that Is 
typically only half the size and executes twice 
as fast as code produced by any other 6809C 
compiler on the market! 

We did an equally better job in other ways 
too, lntrol-C/6609 supports full C, works 
reliably, is a pleasure to use, and has been 
"the compiler of choice" among discrimi- 
nating programmers since ft came on the 
market more than a year ago. 

Available for: 

OS9* ($375), FLEX" ($375), UniFLEX** ($425). 

One-year maintenance, $100. 

Trademarks: ♦Mkroware lr>c •■Technical Systems Consultant* 




CORPORATION 



647 W, Virginia St. Milwaukee, WI 53204 
(414) 276-2937 



THINKING ABOUT 
SOFTWARE ? 



THEN SEND FOR OUR 
LATEST DATA SHEET 
AND PRICES 




LUCIDATA SOFTWARE PRODUCTS 



Lucidata Pascal 



Version 3.1 <UniFLEX') 
Version 3.9 <FLEX9") 
Version 3.2 <FLEX2'} 



from 



<5") (8"} 

$300 

$190 $205 
$150 $165 

$250 



Pascal ROM Package (including license) 

Software Utilities INCLUDE. XREF and PROFILER 
plus media charge 

COPYCAT copying utilities (CP/M to FLEX etc.) 

TEKPAK Tektronix Compatible graphics package 

Prices include Airmail Postage anywhere. VISA and MasterCard 
accepted. (EEC countries should ask for Sterling price list.) 

"FLEX *nd UniFlEX § r« twfemutt o< T«chfMCJ< Sytt«mi Ovumhar** 



$ 25 each 
$ 15 $ 25 

$ 50 $ 65 

$100 $115 



luciddhd 



LUCIDATA LTD. P.O. Box 128 
CAMBRIDGE CB2 5E2 ENGLAND 
TELEPHONE (0223) 841906 



SPELLB 



THE ULTIMATE SPELLING CHECKER 

CONTAINS 142,000 WORDS IN MAIN DICTIONARY 
AND 14.000 WORDS IN COMMON WORD LIST 

FAST - CHECKS OVER 1700 WORDS PER MINUTE 
PRINT - WILL LIST SUSPECT WORDS ON PRINTER 
HELP ~ COMMAND IS AVAILABLE TO DISPLAY SIMILAR 

WORDS SPELLED PROPERLY 

COMMAND TO PUT WORDS INTO PERSONAL WORD LIST 

- COMMAND TO ELIMINATE WORD FROM SUSPECT LIST 
COMMAND TO FLAG WORDS FOR LATER CORRECTION 

REPLACE - COMMAND TO CHANGE ALL OCCURRENCES OF 
MISSPELLED WORD TO CORRECT SPELLING 

- OPTION TO REVIEW THE SUSPECT WORD LIST 
COMMAND TO VIEW WORD IN CONTEXT DURING THE 
UPDATE OPERATION (WITH OPTION TO CHANGE) 

- WORD LISTS CAN BE CREATED FOR SPECiAL 
APPLICATIONS (MEDICAL, LEGAL. ETC) 
- WILL CORRECT THE TEXT FILE AND RENAME 
THE ORIGINAL FILE TO .BAK 

OPERATES UNDER FLEX9. 40K MEMORY REQUIRED 



ADD - 

DELETE 
MARK - 



REVIEW 
VIEW - 

SPECIAL 
UPDATE 



SPELLB - INTRODUCTORY PRICE $125.00 

MUSIC BOARD $75.00 

*T0 BASIC PROORAMS. SIMULATIONS AND PICTURES 
SEND SASE FOR LIST 

SPECIFY 5" OR *' DISKS CHECK OR MONEY ORDER 

FLA RES ADD 3\ SALES TAX 

PALM BEACH SOFTWARE 

3640 LANTANA ROAD 906 967-9*60 
LANTANA, FL 99462 



'66* Micro Journal 







'68* Micro Journal 



ENGINEERSrTECHNICIANS 

THE MICRO 68000 
IS DESIGNED FOR YOU! 

COMPLETE, READY-TOGO SYSTEM INCLUDES: 

D (Tamp switching power supply D Keyboard 
□ Display- Hex & Binary □ Pete Bug keyboard 
monitor □ Optional Macs Bug CRT monitor □ At- 
tractive cabinet a Dual RS232 interface D 32 bit 
parallel I/O □ Versabus compatibility □ The only 
system that provides for direct entry of 68000 
machine code. 

For Information call (619) 566-3911 

Computer System Associates 

7562 Trade Street, San Diego, CA 92121 



csn 




fr RUTO - COMM 



For 

6809 

FLEX 




The 'modem' 
program that 
automates 
time sharing 
communications. 



FEATURES: 

1 ] Send text file from personal computer disk to 

remote mainframe computer 
2] Save incomina text to disk file [venfys 

acceptance of XON/XOFF cont ols) 
3) Slow transmission mode based on character 

verify for systems which require speed below 

baud rate 
4] Eight software selectable UART nodes: 8 bit, 7 bit 

5) Self adapts to amount of memory m your computer. 
5} Runs m as little as 1 2K bytes or up to 65K bytes 

7) Reads and writes fifes of phone numbers to be 
dialed. 

8) Makes any modem a smart modem 



Call Or Write For Further Information 

Priced at $75 VMAJUASTEPCARD ACCEPTED 

SPECIAL 

HOBBYIST 
PRICE 
$39.95 
5'OISK ONLY 






18 PAGE MANUAL ONLY S3,95 
SORRY, NOC.O.D.S 

5712 EAST PPWDfO ST. • SCDTTSDALE. AZ, 85254 
FOR INFORMATION CALL (102) IflVIIS? 



ACCOUNTS 
PAYABLE 

iOh m* n#oOoc*o out Of 



OS9 Application Software 

Specialty Electronics, Inc. 



W9HX1H9 ACCOUTIN^O FylTern The 

occounn poyobie POCkoQ* 
ivPPO»1| these tutirondtng 
teon/es 
i E«fryoro»oiit eredm tegvo 
ruOCei ^HJX3P^J.rtCX>rTTW«M» 

7 Hono eh«e** enj©f«a cveo^ 
Or CO***** pirtfod Check* ™n\ 
tKtM and »h«CK todge» 

3 «*0-<Jbi ocjng <y acctKr** 

ona pippe' oeneiol i#oo« r 
efetMputton of o»i antt«i 

4 JO* COfl^f CullQrtW GfOV 
numD«i I racking and buifoi 
Ooniftoofton o»« o»pv*3eO 

5 Vet Oar » rnJr be actoao o» 

e Cotwpiere owOii w>i» o/e 

P*OV**0 

' Qepcm cm t» generaieo ror 
ipecac olw rjciUsi cuitoniei 
grcxot cpen <x acted *n» ona 
n o>*ne» vtxjcnei detou or vwndur 
fcimmahj VXmoH 

Acootnrs Aoyobie I'dode 



$299 



GENERAL LEDGER 
CASH JOURNAL 

Ihe gene*^ <*>gt»f .iir>e center 0* 

ir* Speoorv fJecnoruo Aeeov^ 
(Og Sv*1»™ Wilt, (re poc*ooe you 
con 

« 0taA>ce oavrrc© »necH tjrxi 
incomo )iote*rieriift k% variouft 

7 Ostms account aome* 
toocino oo*i»or^!»o heoa"Q* 

arO lUOOCOOuntt 

3 FC*nK* >POCH» '000*1 OTXJ 

pr>«! parcen«aBK 

4 »0J1 PV *Q* *d ooan KX#noi or 

or ui*>0 "* ^erocive account* 
lectpvacjie c«ys»D*anc*Ej<V«ii 

6 fHx>*<jeoc»«t»cxi04»ifo*foro» 
entijei 

* input dofo •Mar* eaiy to toiK?w 
tor mat 

; Ul» for mail. CO^DOnr 

cra&s*"Q wifftouT moo.<i»o 

NOn 

General lec^y r-code 



$399 



ACCOUNTS 
RECEIVABLE 



v* , Accoxnu OMwaOto can be 
tooc«eO »«*h o mi/vrv#n or *i«ne 
nteifa t&t ufc^g tne»e feaKxe* 

1 OvQ\A» nsoc n C) o*fc»< o*\3 
creoi m«#r»o± tgd ox* portal 
ooynsnti 

2 ft ogi *&}"-* Oiling one 

3 Aomg Qt De«ooft >PKir«d &y 
frwuw 

4 Mom <i>t«ome>i enieted o* 



5 SjQie^^nfi oie gvwo^o 
^sring .rvdivici^a <ovo«cev axj 
c%e*aue Ott^j^j loraMO by og«ng 
co*og»v 

« TolO» t»iterociior> «►•« \Dm 
gtenvcit UKlge* wiir» K?# sMiopmgi 
aoo now o«(^yi*M comooted 
>«pc»a>ev orxj ncnleo «o v<x<ou» 
detour** 

Accounrs f?eceivoCfe 



$299 



INVENTORY 



Ino Sfl8CiO"r 6J«c'ronici 
JniprOCtive Accounling $vn«m 
ir v«n)cJV Con'rO' «0CkC»ge cronde* 
iHe ic»ii tot ctmtpie^o cor*o< a* o 

Oiq«? flno active inventory 



f>eoar>i <or quQrV**e5 on tat*) 
OAO>» J 1«OJ <ri OiO» csciiv,* ond 
T ncFty crft\«X Ct7krgP»K» 
7 ComeWC itiem C»3CTiOt»on 

careoo^v g'uuo* iupph«i 
>«»0» T TXJ*<yx Otocx **3*<n <oc<dQ« 

3 S<«npfo rt»t/» O^O r«COro1 
itftCTi proceOutet 

inventory Contioi I code 



$299 



& 



PAYROLL 



T«»# Sovctoiry tlacPmnici I T©iOC 
five Accouoi«>9 SvH m P40«k*at 
pov*oM »y opcwi wntc h goes b*vo<td 
wr itng porcheefct ku ••Oluret In- 
CNxM 

t *»«kry &»weekiv i«mt<Twrvm>v 
orx* mooHMy pay o«««o<li 

2 H0u(\ lolory vOcoiion ty)4k< 
doy cofr«fj»»»»ort o*+4T*rm and 
componiotorv pov catvo^Wi ervd 
l»pi 

3 P#diiciv l«do<oJ ona nal* par 
tod lox»» in urence OOdtl'O^altQx 

Of tpectaioedociwoi 

4 0o*y l<ne> k**Owig a<to«*d 

i (N*ilt check* «r U D> Check 
tftagtt and mumai TuiPory 

A Prirtri W-? lormi t*d*rcU ond 
tlalft Id* i«por1 "ikwmolKXi 

* Keepi fc* empiavwe fmoiy 

ft Toi lofe^*» oiiow ui*« 
mode Icon or 

Payroll J-code 



$425 



Complete DocumentCrtiOf^ $1995 

* OS9 and Basic OP are trademaiks of Microware. Inc. and Motorola Corp 



PO Bo* 541 
211 0W Willow 



SpectoHf Electronics 



<405) 233-1632 
Enid. OK 73701 



50 



'68* Micro Journal 



INTELLIGENT PRINTER INTERFACE 



For SS-30 and SS-30C Computers (SWTPc, GIMiX, SSB and Others) 

COSTS ABOUT THE SAME AS AN ORDINARY INTERFACE. ur Intelligent Printer Inter- 
face offers much more. First, it features an on-board MC6802, 2K bytes firmware and 2K bytes (ex- 
pandable to 8K) on RAM buffer We have both RS-232-C Serial and Centronics parallel versions. 
Both versions fit on the SS-30 (or SS-30C) bus. They work with standard system software. On-board 
buffering of print data is automatic and allows print spooling. But, there is more: we have features 
which can be Invoked under software control. Control sequences may be Intermingled with print 
lines. 



set left/right/top/bot- 
tom margins • set page length/page 
size ♦ set horizontal/ vertical tabs. 



discard print, halt printer, restart 
printer, halt at top of page, disable buf- 
fering, test buffer, test printer 



Ignore specified characters, 
translate characters, auto linefeed, 
download user-written filter program 




Scientific Instruments 

204 MLir* Lane. Alpha 9 
Fort Collins, Colorado 60524 
(303)484-1913 



INTELLIGENT PRINTER INTERFACE 



VCM-SP Serial Printer version, assembled, 

tested Owner's Manual $129.95 

VCM-PP Parallel Printer version, assembled, 

tested & Owner's Manual $119.95 

Cable assembly (serial or parallel type printer) 

$19.95 

Please add $3,00 S/H charges per order Color- 
ado residents add 3% tax. MCA/ISA accepted. 

JCP (Job Control Program) for 6800/6809 FLEX 
systems (see our ad in January '63 '68' Micro 

Journal) $49.95 

JCPSource + Object $89.95 

f LEXru 41 « rtetltwrf U*6*mMi* of T«crm4c* Sy«t**t Ccn«uHan»i, IfK 



/T 



our EPROM PROGRAMMER with the field. 

All <tat« Ktkmi directly fcvn *ww(*cHjr«r « curr«*rt *»vwr*U»'*?. Sof:^*tn>, 
intttocm, or VfoittitlXY nt.lblM n*y mho i» to^irvl *t jrklUiwvil «j»t. 



■ *TOiit«i in fcu r.im 



A 


e 


c 





E 


F 



INTERFACE 



INTELLIGENT 



PROGRAMS 

2SOB 

2706* 

27J6 

2916 

2716 

2716. 

2932 

2732 

2332A 

2564 

3764 

2526 

27126 

2816 

6676« 

6746 

6749 



TOTAL 



PRICE 



PAR 


PAR 


SER 


510 


SER 


SER 


NO 


NO 


YES 


NO 


YES 


VES 


• 
• 
• 


• 

• 
• 
• 
• 
• 
• 
• 
• 
• 
• 

• 


• 

• 
• 
• 

• 
• 




• 

• 
• 


• 
• 


3 


n 


6 


11 


11 


11 


$45- 


t16ft 


S299 


S3T5 


I44g 


$575 



Of** Kltt* V*vqrtmmr t It 2*. Pvr«ccv»llty h*w*j la far MCG. 2758. 2W6. and 
2716 ineliAJmt. Spaeify a\t. U»X ■ **«. ani «?»* at b*j *y*t*m iTSCm fUOt or 
SStto DOS) titan onlorh^, Nmuil only, SlOi refundable with CPWM pm*w». 

UNtTEK • P.O. Bex 671 • Emporia, VA 23847 



68 Products SALE 

JPC is closing out some of its SS-50/30 
Product Line . , , and having a Sale on 
the rest! Close out when stock is gone. 
Sale ends Sept. 30, 1983. 

CLOSE OUT 

MX 6SS-50 Extender $15.95 

CK-7 Real Time Clock $45.95 

DAC-5 Dual Channel A/D $59.95 

PA-1 5 Parallel Interface $24.95 

TSU Motor Control $ 5.95 

SALE (♦) 

TC-3 High Speed Cassette Interface $49.95 

AD-16 16 Channel A/D $69.95 

CFM;3 Cassette File Manager on Cassettes 19.95 
CFMJ3 Cassette File Manager on EPROM $24.95 

BASIC/3 High Speed Cassette Basic $39.95 

(♦JSpeCify 6800 Or 6809 ^m^ 

Temu: Cosh. Master Card or Visa ( Wfp^Znn k-tc rr\ 
Shipping & Handling $3 50 (US) %^ J^ PRODUCTS CO 

S5 50 iConada) $15.00 (Foreign) Phone (505) 294*4623 

12021 PoisanoCt, 
Albuquerque. N.M. 87112 



'68' Micro Journal 



51 



Wtatof lor (VQSOAS of feel appeororvce, or reDobilfry. 
you like n>osi Color Computer owners would Dfobobry 
prefer o benet keyword 



Now, you con hove on* 



$89.95 




4jHho»» pcmiH9QV) o ,\hmy9** i* w% 
pxMd#» o hn nonrx+i o»ao j »d <M<T oncw 
cap**** TiKtoaynpiX«ri and i«m>ioox Th» tatty 
mxrurvd hcycopo. 9/oy and bKx* wiih whilo l*frmrn rtkofy 
arr«*vrv*wih*CateCar?x**t<»ift»«kaBpt<7(yT» AM.ih*»wytiixMtf>^HquQiryay«nucnc7t 
OM««v*w^'*tM>C*Op*fOtOAA^dC^ferT* v d«M»«AttP^M(i«<J The ta* hjtxmn fcryt 
artpr*^ rh» ««o pa^om ir> i h» toytmo* momt or o* i odded bom* fctvtowtfnxMowm 
iA«ot. at wim ifta Norn wrricn wtto how io»w4y adopted ih*** C»uo> « tank Hogg 
lata**** fl£Q i^too^Mvtr**»^thoho>fcaiKfi»** r y QA5ICf»uyK*'*'»Ve«arfipir» 
and owr<>A/ kr^oof dm** k|Ang»oif MUM Tho hvyfcmrf b Qtfon mod* tar rr* Cotar 
CqrT^4^byMQOgTO\onf»> ^ ^^ O cwj'«Agu^cfa»t^^»yCTyTx^y»yy>oodc ^V ^'" w ^ 
CcTv^tfWfy wufcjm » a wrgtm (*M?tr\ cptrono* wo>«*Q oo wAsferw or a/»»g 
******** Th. n**R» P*»*~ « db**r<t * on *m»d ,-^i rtr»»«l **W?» « ntX^d 
bur abd ouafc*fr V0O>a)*V tor WOO («»f#*x±4r *** o^dxa*! Two w»«yi»of»T*Wv*»d 
a» ovafeMr. on* tor itwri t qnd wi*r Odor ComptMnartJrrworhct4orr**<rrtuonrCdfto 
kxwi a> A or CV) Cotor ond TOP 100 ar<Mrv (Vo» >pta* w»*d> *«*»n yoo how *f*n 
oebr*Q # poBCrtr Qm^« lr«A^ rlv arrvW^ <X9Sfcjg rvr««r ond **af nsnbvt 

Mleronl* Sy»tom» Corporation 
■ ton ■« now 

8C 0¥ta MO «330i 
(314*441 1W4 



WOW ^w> ■< »"^» 



■ t i. pji Ul, M«Q C««4» *4«0 OOP «M0 *. 0OO»»C< 



CALItfOAR-ClOCX / tIKCI / fAIALLtt POtT 




C«l«od«e . Clock 



Parallol t/0 Port 



Copotrvcetoo -- e.ur *■«, •««««• «•»••«< • »si* •?.**«•« 

HAnual -- Vttt 4ficvatntt4 * >* P*l*» 

A.««obl«4 «o4 l**t«d $1|9.$) Hit *tf.*3 

Coldpla(«a bv» «onn 7 . 50 ? HH* option i.VO 
Oltk } or 1 lo. SSB or FUi- OSGAvO*-£*> NOW J*. 9* 



101E1T10H tLlCTHOHUi 

looi u.r* SiAdi :ir . it 

*l9va.u*rsMo, «H 87121 



PKoo. {>03> 294-0023 
KK r««ld«r*li add 41 t*m 

Add «3 Shlpplog 4 «-ndltot 



'68' MICRO JOURNAL 

if The only ALL 6800 Computer Magazine. 
if Mora 6600 material than all the others com- 
bined: MA Q AZ | N E COMPARISON 
(2 years) 
Monthly Averages 

6800 ArticlM TOTAL 

KB BYTE CC DOBBS PAGES 

7.8 6.4 2.7 2.2 19.1 ea. mo. 

Average cost for all four each month: $b.53 

(Based on advertised 1-year subscription price) 

68 cost per month: $2.04 

Thai's Right' Much, Much More 

tor About 

1/3 the Cost' 

OK, PLEASE ENTER MY SUBSCRIPTION 

Bill My Master Charge Q — VISA □ 

Card it Exp. Date 

For □ 1-Year rj 2 Years □ 3 Years 
Enclosed: S 



Name- 



Street 



City_ 



-State. 



_Zip_ 



My ^Computer Is: 



98 Micro Journal 

5090 CMlfndn Smith Rd 

Hlxftort. TN 37343 



SUBSCRIPTION RATES 

USA 
1 Yw S24.50, 2 Year S42.50. 3 Year S64.50 

•FOREIGN SURFACE Add SI 2.00 per Year to USA Price 

•FOREIGN AIRMAIL Add S36.00 per Year to USA Price 

••CANADA & MEXICO Add S5.50 per Year to USA Price 
Cash (USA) or drawn on a USA BankIM 




$sM?®& 




y 



52 



68* Micro Journal 



Universal Data Research, Inc. Introduces 




300 Baud Acoustic. 
300 Baud Direct _ 



300 Baud Auto Answer 
1200 Baud Direct 



1200 Baud Auto Answer 
300/1200 Auto Answer. 

300/1200 Auto Dial 

Modem 2 Port I/O Card _ 
with speed select 



$149.00 
$179.00 
$219.00 
$449.00 
$499.00 
$549.00 
$599.00 
$119.00 

$449 



Printer Special: Okidata 82A 

Dealer inquiries Welcome • Call or Write For Free Catalogue 



FLEX* and UniFLEX* 

software for the 6809 



V 









DATA BASE 








\ 




MANAGER 


**h 












CUSTOMER 

PROGRAM 


VENDOR 
PROGRAM 




I 








I 




ORDER 
FNTRY 




INVENTORY 




PURCHASE 

ORDER 




JZ 


/ 






IE 




ACCOUNTS 
RECEIVABLE 


GENERAL 
LEDGER 




ACCOUNTS 
PAYABLE 








IE 












PAYROLL 








Integrated 
Business Programs 



Accounts Payable 



FLEX UniFLEX 



Accounts Receivable. 

General Ledger 

Inventory 2 

Payroll 



Data Base Manager. 
Word Processing 

Software 

WP Menu 

P Control 



S295 
$295 
S295 
S295 
S295 
S350 

$295 



S395 
S395 
S395 
S395 
S395 
$450 

$395 
$150 
$150 




'FLEX A UfvfLfy are Trademarks, of tttctimcof Systems 



2457 Wehrle Drive, D-68, Buffalo, NY 14221 
PHONE (716)631-3011 

Dealer Inquires Welcome ^' 




W Micro Journal 



53 



64K SS-50 STATIC RAM 



$ 199 



00 

(4BK KIT) 




BLANK PC BOARD 

WITH DOCUMENTATION 

$52 



SUPPORT ICs * CAPS 
FULL SOCKET SET - 



$1800 
$15.00 



S6K 
64K 



$249 
$299 



ASSEMBLED AND TESTED ADD $40 

FEATURES: 

• Uses new 2K x 8 (TMM 2016 or HM 61 16) RAMs. 

• Fully supports Extended Addressing. 

• 64K draws only approximately 500 MA. 

• 200 NS RAMs are standard. (TOSHIBA makes TMM 2016s as fast as 100 NS, FOR 
YOUR HIGH SPEED APPLICATIONS.) 

• Board is configured as 3-1 6K blocks and 8-2K blocks (within any 64K block) 
for maximum flexibility. 

• 2716 EPROMs may be installed anywhere on Board. 

• Top 16K may be disabled in 2K blocks to avoid any I/O conflicts. 

• One Board supports both RAM and EPROM. 

• RAM supports 2MHZ operation at no extra charge! 

• Board may be partially populated in 16K increments, 

16K STATIC RAMS? 



The new 2K x 8, 24 PIN static RAMs are the next generation of high density, high 
speed. low power, RAMs Pioneered by such companies as HITACHI and 
TOSHIBA and soon to be second sourced by most major U S manufacturers, 
these ultra low power parts, feature 2716 compatible pin out Thus fully 
interchangeable ROM RAM boards are at last a reality, and you get BUNDING 
speed and LOW power thrown in tor virtually nothing 



Digital Research Computers 

(OF TEXAS) 
PC BOX 401565 * GARLAND, TEXAS 75040 * {214)271-3538 



TERMS: Add $2 00 postage We pay balance Order under $15 add 7SC 
nandlmQ MoCOO We accept V«aa»wJ MauetCharge Tex Res addSH 
Ta » Foreign orders le«cePi Canada) add 20% PAH Of 0e»s over $50. add 
Bf>C for insurance 



54 



'68' Micro Journal 



ffiffiWWWWWffiOTffiR^^ 



ARCAD& SO 



POWERFUL COLOR GRAPHICS 

Uses ihe new TMS9918A Video Display Pro 

cessor High resolution 256 x 192 pixel chsptay 

with 15 colors 16k Bytes of onboard RAM does 

nol reduce user memory 32 graphic images can 

be individually moved wilh simple XY commands 

(or smooth animation 

External Video input allows sublilling 

NTSC composite video output 

SOUND EFF ECTS AND MUSIC 

ThreeAY3-89iO Programmable Sound 

Generators 
Nine simultaneous voices 
Three independent noise sources 
Onboard slereo amphjier drives Iwo 8 onm 

speakers 
AOpnrQNAL W O CAPABILITIES 
Eighi analog inpuls wilh 8 bil resolution 
Suppor is lour loysticks with pushbutton swiiches 
Eight bfl parallel I/O port 
Enhre unit maps into 256 byles o* memory 
DOCUMENTATION AND SOFTWARE 
Programming manuals lor Video and Sound 

Processors 
Subroutine library and Super Demo Maze Game 
Example programs in BASIC, f BASfC and 

ASSEMBLY 
User library and sales support 



ARCADE SO assembled and lesled $325 00 

Video and Audio connector sel 15 00 

4 Joystick connector se l 15 00 

2 Radio Shack joysticks 24 00 

UHF channel 33 modulator 32 00 

Gold Motex connectors 1 2 00 

A/BASIC tor 6800 11000 

FBASlCtor6809 M000 

FBASIC (with ARCADE 501 75 00 

FBASIC imanual only) 10 00 

ARCADE 80 (TRSMooeli) 395 00 

ARCADE I 00IS 100 BUSS) 37500 

ARCADE SO RGB 375 00 

LABVIDEO(MotorolaEXORbuS) 37500 

LABVIDEORGB 375 00 

NEW MV09 6809 Processor Board 225 00 
'Comes assembled wilh PIA and AClA 
*1 2 Sockets tor 21 16 2732 or RAM 
'Supports DMA disk I/O 
■ldeaMor6809 upgrade or process con I ro I 

AMDHK COLOR I Monitor 425 00 

AMOEK COLOR M Momlor 799 00 

AMDEK COLOR III Monitor 499 00 

256K Dynamic Memory Board 795 00 

tassembiedl 

256K Dynamic Memory Board 39S00 

(assembled w/64K> 

64K Dynamic MerOory Board 29S00 

(assembled) 

Speciry 5 or 8 sofl seclor disk lor TSCs FLEX or 
MiCROWARE S OS/9 system 
TERMS CASH VISA MC COD 



fill 



TERMINUS DESIGN INC *n conluncKon with 
MK.ro ware Systems Corporation, is proud 10 an- 
nounce FBASlCanenhancemenlol Microware's 
6800 A/B ASIC Tne<r fast compiled BASIC has been 
adapted lor 6609 users wdh added video and 
sound features lor ARCADE 50 users FBASIC js a 
true compiler lhal produces oplimlzed machine 
languagemoduieswfi^hareROMabieandreqtiire 
no Run Time package FBASIC requires less 
memory overhead and runs hundreds o I times tas- 
ter than BASIC interpreters II supports standard 
BASIC instruction including Siring tunc lions. Disk 
I/O and lasi integer anihmeiic with multiple pred* 
sion capability Graphics verbs and functions fully 
support ihe Arcade SO Arcade slalemenls Include 



INIT 


MODE 


8LANK 


BACKOROP 


SIZE 


MAO 


VRSG 


DELAY 


MOVE 


DRAW 


FCOLOR 


^SWITCH 


HE MOVE 


RORAW 


BCOLOR 


SWITCH 


PSG 


TON£ 


e*vl 


VOtUME 


ADC 


SPRITE 


SPNAME 


ENDEF 


SPCOiOR 


RSPRITC 


SPOtF 


PATDEF 


VPEtK 


VPOKt 


VPRINT 






TERMINUS 


OESiGrg 


INC 




16 SCARBROUGH ROAD 




ELLENWOOD GA 30049 




(A(M) 474 4866 





mmmmmmmmmmmmmmmnmmmmmmnmsm 



66 MfOtf) JOUMAL FHDERAIG an DISK 

Disk ft: FILES0RT, MINICAT, MINIC0PY, MINIFMS. 

"LIFETIME, •*»0€TKY t ••F00OLIST, •"0I ET. 
Disk 02: OISKEDIT w/ Inst. & fixes, PRIME, 1FTO0O, 

••SMO0PY, FOOTBALL, •^EXPANN, «»LIFETIHE. 
Oisk #3: CB0G09, SEC1, SEC2, FIN0, TABLE2, INTEXT, 

DISK-EXP *DfSKSAVE 
Disk #4:' MAILING PROGRAM, *FIN00AT, *CHANGE, 

*TEST0ISK. 
Disk «: *DISKFIX 1, # 0ISKFIX 2, "LETTER. 

••LOVES* GN, ••BLACK J AK, •■BOWLING. 
Oisk #6.- ••PURCHASE ORDER, JNDEX (Disk f II© Indx). 
Oisk ill Linking Loader & RL0A0, Herkness 
Oisk IB: CRTSET, Lanpher (Hay '82) 
Ofsk 09: 0ATECOPY, 0ISKFIX9 (Aug '82) 

MOTE: All are as published or received by 68 
Micro Journal, Some have fixes and patches* 

This Is a reader service only I No Warranty Is 
offer** or Implied, they are as received and ere 
for reader convenience ONLY. Also 6800 and 6809 
programs are mixed, as eacfi Is fairly simple 
(mostly) to convert to the other. 

PRICE: 8" Disk $19.95 - 3" Disk $)7.95 

68 MICRO JOURNAL 

P08 794 

Mlxson, TK 37343 

615-842-4600 

# Indicates 6800, ## Indicates BASIC SwTPC or 
TSC - 6809 no Indicator. 

MASTER CARD - VISA accepted - Foreign add 
sufficient postage surface or etrU 



WINCHESTER 

FOR MOTOROLA 

EXORCISOR/MDOS 

D 10 MB Winchester hard disk runs MDOS on Motorola 
Exorcisor System □ No modification to MOOS required 
D MDOS based software stays alive D All user software 
operates without modification D Optional SA-801 R flex- 
ible diskette drive system D Optional 10 MB removable 
cartridge. 

gk MW± For Information call (619) 566-3911 

■ J ij Computer System Associates 

^^1 I 7562 Trade Street San Drnoo CA92l2t 




W Micro Journal 



55 



TEN MOST-ASKED QUESTIONS 



TM 



about DYNACALC 

THE ELECTRONIC SPREAD-SHEET FOR 6809 COMPUTERS 



1 . What la an electronic spreadsheet, 
anyway? 

Business people use spread-sheets to 
organize columns and rows of figures. 
DYNACALC simulates the operation of 
a spreadsheet without Ihe mess of 
paper and pencil. Of course, correc- 
tions and changes are a snap. 
Changing any entered value causes the 
whole spread sheet to be recalculated 
based on the new constants. This 
means that you can play, what if?' to 
your heart's content. 

2. la DYNACALC juat for accountants. 
then? 

Not at all. DYNACALC can be used for 
just about any type of job. Not only 
numbers, but alphanumeric messages 
can be handled. Engineers and other 
technical users will love DYNACALC's 
sixteen-digit math and built-in scien- 
tific functions. There's even a built-in 
sort command, so you could use 
DYNACALC to manage small data 
bases - up to 256 records. 

3. What will DYNACALC do for ME? 

That's a good question. Basically the 
answer is that DYNACALC will let your 
computer do jusl about anything you 
can imagine. Ask your friends who have 
VisiCalc, or a similar program, just how 
useful an electronic spread-sheet 
program can be for ail types of house* 
hold, business, engineering, and scien- 
tific applications. 



4. Do \ have to learn computer 
programming? 

NOI DYNACALC is designed to be used 
by non-programmers, but even a Ph.D. 
in Computer Science can understand it. 
BuifMn HELP messages are provided 
for quick reference to operating 
instructions. 

5. Do I have to modify my ayatem to uae 
DYNACALC? 

Nope. DYNACALC uses any standard 
6809 configuration, so you don't have 
to spend money on another CPU board 
or waste time learning another operat- 
ing system. 

6. Will DYNACALC reed my existing data 
lifaa? 

You bet! DYNACALC has a beautifully 
simple method of reading and writing 
data files, so you can communicate 
both ways with other programs on your 
system, such as the Text Editor, Text 
Processor, Sort/Merge. RMS data base 
system, or other programs written in 
BASIC. C. PASCAL. FORTRAN, and SO 
on. 

7. How laat la DYNACALC? 

Very. Except for a few seldom-used com- 
mands, DYNACALC is memciy-reskJent, 
so there is little disk I/O to slow things down. 
The whole data array (worksheet) is in 
memory, so access to any point is instan- 
taneous. DYNACALC is 100% 6809 
machine code for blistering speed. 



8. la there a version of DYNACALC lor MY 
ayatem? 

Probably, You need a 6809 computer 
(32k minimum) with FLEX or UniFLEX 
operating system. A version for OS-9 is 
also in the works. You also need a 
decent CRT terminal, one with at least 
80 characters per line, and direct cursor 
addressing, if your terminal isn't smart 
enough lor DYNACALC, you probably 
need a new one anyway. The UniFLEX 
version of DYNACALC also allows you 
to mix different brands of terminal on 
the same system. There's also a special 
version of DYNACALC for Color Com- 
puters equipped with FLEX and Data* 
Comp's F-MATE. A version for Frank 
Hogg's Color Computer FLEX is also 
being done* 

9. Mow much doea DYNACALC coat? 
The FLEX versions are just $200 per 
copy; UniFLEX version $395. Foreign 
orders add $10 per copy for postage. 
We encourage dealers to handle 
DYNACALC, since it's a product that 
sells instantly upon demonstration. 
Call or write on your company letter- 
head for more information, 

10. Where do I order DYNACALC? 

See your local DYNACALC dealer, or 
order directly from CSC at the address 
below. We accept telephone orders 
from 10 a.m. to 6 p.m., Monday through 
Friday. Call us at 314-576-5020. Your 
VISA or MasterCard is welcome. Please 
specify diskette size for FLEX versions. 
Software serial number is required for 
theUniFLEX version of DYNACALC. 



ORDER YOUR DYNACALC™ TODAY 



Computer Syatema Center 

13461 Oliva Blvd. 

Cheaterfleldr MO 83017 

(314)576-5020 

f\Q_Q Version NOW Available 
^^"** $250.00 

UniFLEX software prices include maintenance for the first year. 

DYNACALC, DYNAMITE, and DYNAMITE + 

are trademarks of Computer Systems Center, 



Foreign Dealer a: 

Australia & Southeast Asia: order from 
Paris Radio Electronics, 7A Burton St., 
Darllnghurst, NSW 2010 Sydney. Tele* 
phone: 02.357-5111. 

United Kingdom: order from Compu* 
sense. Ltd., PO Box 169, London N13 4HT. 
Telephone: 01882-0681 

Scandinavia; order from Swedish Elec- 
tronics hk AB, Murargatan 23-25. Uppsala 
S-754 37 Sweden. Telephone: 18 25-30 00. 



? MATE it a Iradamark or Oili-Comp. 

V<»lCalc la ■ tr*0*n»tu D f Vk Corp 

OS 9 <9 a trademark of M Icrowar* and Motorola 

FLEX and UniFLEX are trademark ol T$C 



56 



ALSO FROM CSC 

DYNAMITE* 

"THE CODE BUSTER" 

now available for UniFLEX 
OS-9 veralon aoon 

DYNAMITE + is a new version of DYNA- 
MITE, our popular 6809/6800 disassembler 
package for 6809 FLEX. Present users of 
DYNAMITE can upgrade to DYNAMITE + by 
sending us the original DYNAMITE diskette 
and $40 (plus $5 for foreign postage). 
DYNAMITE + does everything DYNAMITE 
does, and morel A crosa-relerence gener- 
ator has been added, label flies are now 
maintained only in text form {LABEL EOU 
Sxxxx), and boundary file specifications 
have been tremendously simplified, which 
makes it easier to disassemble large pro- 
grams containing lots of big tables. 

The UniFLEX version of DYNAMITE + 
does everything the FLEX version does, and 
also automatically handles system calls 
and Mnfo* areas. 

DYNAMITE + is available for S100 per 
copy on FLEX (specify diskette size), and 
$300 on UniFLEX. Foreign orders add $5 per 
copy for postage. 
'68' Micro Journal 



WINDRUSH MICRO SYSTEMS 






ALL-IN-TWO 6PROM FRDOtAMIgW 

K2SH23 
Iff J L^ pHB^^^ 

| ► Probably t*» Mil rtMttlll «P»OA Pft0flftA»«Hi 4v**l4blr. |AIV(itfi 
1 4 »ofi**rf for ElQ*ctlor*|) trull? addrv4vat>l») arat SS«3G Otii ftyitroi, 

* MOCOAMKS ANft VEfttHCS 250*//70&, 2>TAf*n« (SINGLE 4Mb IHI-Voll ' 
TT*ES> ?S32- 2732, 27)2*. 25*i, ??«* AN* 1 N C 12** TNS252* (16K • r>> I 
•> *> • > WITHOUT AMlTZONAt. * r*«IO*#*LI ft* HOBULIS <► <- <* < 

> *K£**Wl* r*l*'<ili out Id tour m*>tl •'■* «i* 1' o! ttfl|t#d pal* UHli 

* DI«<tSI*E COmAftOS •**>....... «OVI Bit*. »[**, rfOCJAM, VEIJM EPOC*), 

«»w»:Ht/CHn*iG£ aurrf*, ro«umi» aunt or ovfti*, MU eurp£»i. 

* IvUy «(u»AtM <*»•'*« p«vit W/ic*«««t »ci & rfcaory of OPCrAltor*. 
»*v« autocall/ tintjM *<•*« y/iolo+r rrint 1 <o»po/%^i ovvrUy ' 

* V>1l«*r« orlwt *v«ll«bl» to* (fill 2/«>.» f««J, <OV9>. and UVOl). 
ait SOUKt MLES &***lXf». Sp*<ltr OP/SVS an* dn* tiff «n Qr«rr* 

* Rir**ry filr «f*»/lr*ITE ulUiPM »t«pl4*d «iT(v OS. 9 v*r«<on. fl«x*r r 
lit* otfirt loader t«X9>U»d atllS NMi vrrtloft. 

* (UllT ASSfftOUp, DUPM»*ZM, AH* TESTED NO EXTMS 1C >VT! 


MAC£ A «o-r*»ld»r>t E0|lO»/A»$tr»jLEl wrlCCan fry CrlkW TroC t .M<h ! 
t*M*% «o*t of th* oalft owl ot At«»a&iy Un»vK» progm 
ovvrlopaant . All^I orOffram» to bf «rl1t»fl, Id1t»d, *i»nabl«0 r 
«*d de-bu99*4 WITHOUT viwr *p>t*»t^9 **>• Ol*» aparaUng %y%i «a. 
Wl«<*» xrUCl a co*ra»<df«i 4*00/1/3 f 01TO*/C«<WJ- AS$E»«Ll*. 

PLf9 * eo "■« *<***> * i»tTM/C0«riLEI/H^ffM6lt »nti*n by C#ar.a» 
frott. A 11*914 o**» (MWMrr thai probers position 
|i*kt>tnay<i «*<ktoa <od* cxitPWI. SuppOMi -any BASIC, S*l/*, 
•no PASCAL ftrwclurat. t**OMt 1 bit and t« Ml *t«rt<J ANB 32 
bM floating PelAt vaetabla*. PL.I* I/O* floating OOt*t r an* 
icirmliflc fi**<ttor* library rw/too/>c«l lrtclud*<t> 

DETA1LE0 OVtftVlCtt Of 1HC aOCVe njOMKTS Alt 0*i *>46*S 
33/3* Of INC OCT0MI T9W ISSl* 01 '0* NtCd© JCU»»*A.. 

Q t^^ Kin vcri<on cl !■»• Jaawi PJcCo*^ •<■ («aiHrr that »«t 
or^tnally <le««(op»d lor UrilUH. Support* all 'C* Oala lyprt 
1 nctipl 'ttoalt*, 'do*jb<»«*, **d + b1«.Mald»*. ^ro^cri v«ry 
rlfU'ent *»»«M? lat«ai> C 0* foiircr OwlPwt* »ft* T« r« local Ia« 
*f 4 ^<>irr/nnk»ng loidvr (5^09-17) (i rtcMM^^ if >oo »<ir 
lo m»t# na* + aii* ui» of C't ability To ProOVit* Her«ry «06\«lM» 




fUtr (lAc(k»*» »MCt» ...««...(Ai09 fill OKLxJ VM.OO 


ft/9 (inclgort p-ATNS o-c i*o*l . ItSO* ttU «*«>... H«ft.00 1 

'(' (A 1A* M09 IUI «y«t«« ** rroulr^d). .,-... ........ .« S29S.QD 

S»J0 AiL-tK-TWO, u/«fw v»r»lo» of toKx/i eVl««r«*.«*, .,»37J.0D 

laOdcift^r **J--lfc.rwo, M<r<Wr \ffrKvi of »oK-*r« 0V«y«r* t^W.OO 

JOMwAJrC e«I«<RS for a ?r«t 4 3rd or 4lh 0f/SfI .«,,. ♦»♦*•*•* 25-CO 

r t 1 t 1 V 1 » L L u L- t A t ■ Mil PQWUI 




**j S'K) icti-taa 4 

1 AL K f « /L 1 Sf (tfCR/ COHTWtU * 1 
VILL M AVAIL AM. 1 SOON! 1 




IWJRSTHAD LABOR4T0RES 
NOrTTW WAkSHAM, NORFOLK 
ENGLAND NR28 9SA 
TH.: (0692) 4051B9 
TLX: 97300 SHARE T G 






WE ARE A STOCKING DtSTOIBtfTOfl OF SS8,GMHX,TSC h MKRWARE 1 
GpMX IS THE US/CAH OfSTTCa/TOR TOR WfORUSH. 1 









FOUR DIGIT DISPLAY BARE 
BOARD 

PLUGS INTO SS-30 SLOT 

ASSEMBLY MANUAL AND 

SOFTWARE 

$29.95 PLUS $2.50 POSTAGE 

CMOS 6805 CONTROLLER BARE 

BOARD 

ASSEMBLY MANUAL AND 

DIAGNOSTIC SOFTWARE 

$39.95 PLUS $2.50 POSTAGE 



CHICAGO COMPUTER 
PRODUCTS 

P.O. BOX 11943 

CHICAGO, IL 60611-0943 

6 PM TO 9 PM (312) 225-6691 



vl 




HIGH RELIABILITY STORAGE 
FOR THE SS -50 BUS 



D I S K B U B provides 128K bubble memory 
replacing a disk drive. 

—no moving parts to wear out 
—direct boot capability 
—withstands harsh environments 

such as dust, heat, vibration 
—faster than standard drives 
—utility software supplied 

Diskbub plugs into the 30 pin I/O bus. 
Flex09 drivers and boot rom provided. 
Available for onfy 



$32500 




2457 Wehrle Drive. B-68 
Buffalo. New YorX 14221 
Phone (716) 631-3011 



Dealer Inquiries Wftlcome 






68' Micro Journal 



57 



Model EP-2A-88 

EPROM Programmer 




Proven Reliability 
Easy To Use 
Remarkably Fast 



Alow** 6% foftt «■ Jsckrabbla 

Recall ihdt in -WmIm tv*» rflbtai can reproduce ovrr 13 mJWofi offspring In rhrw year* 
Our EP 2A HH 2 b*!tin) rto( qu)l« «* fas. 1 10S seconds for 2716*1 b capable of pro-Jamming 
1392.1 60 Eprwro in ihr«* v«<h* Our w« EP 2A 884 Single pushbutton cunt»ol. crocks 
if €f»ofT» ai* «rs«ed. (7Toy»m» and verify retains many of It* outstanding feature oi tha 
EP 2A-88-2 ivrttrtt dlA^vOo and audio prompl 
. - . And getting fatter 

The EP 2A 884 has t***l pcogriimmlng ttcnes for th* Intel 2764 | L Tt 2564* of ool^ SO 
and 80 xcondi, jusi 100 itowwfc k>» rhe 271 28 Bui thai to not all sinct ih« EP 2A«H4 can 
•bo do rhe 2716, 2732, 2732A and 2S32 Eproms 



Part N* Orvolpdort 

EP^AWieprompvogfftmm^ 115V 50/60 M2 

Now iiArvWd voltage j220v. 2KV Of I00w> 



SS5000 
IS 00 



Copy Module*. Onto Capability 
CM-20 2732 $2S00 CM20A 2732A .. .13100 



CM 40 2532 25.00 

CM-612 2564 2S.00 

CM^S 27128 2S00 



CM-SO 27l6 r 2SI6 2500 

CM-643 2764 . 25,00 

SE.64-2 Sock<tE)ip«ndo for 2564 ?3.00 

93,00 



SE<64^3S<»cfc*t Expander Cot 2764. 27128 

Optimal Technology, Inc. 



Phone (804)973-5*82 



Blue Wood 138 



Earlysvilte, Va 22936 



RBF-CACHE for OS9 level 2 

Device driver to create an RBF device with Its storage 
In RAM (acts iike a very fast disk) . . . $100.00 

UTILITIES-A for OS9 level 2 

Utilities to locate dump and disassemble from 
memory or files, fast level 2 PRINTERR and other 
utilities , . . $75.00 

Specify 8" or 5vi " disk when ordering, inquire for 
level 1 cache availability. 



QMM1-B 256K MEMORY 
FOR SS50-C 6809 SYSTEMS 

Compatible with systems by SSB, GIMIX, and SWTPC 

including those with DMA disk controllers. 

Full 2Mhz operation with transparent on board refresh, runs 

continuously at 2 Mr\z without cycle stretching or stealing. 

Very versatile addressing and disable features. 

Parity option haits processor and sounds audible alarm upon 

detecting a read error, 

All boards assembled, tested, burned in and warranted for 1 

year. 

Also available with 64K, 128K, or 192K, 

256K lor $935,00 — 256K w? parity $1035.00 
Delivery: Stock— 2 weeks. Terms: Prepaid or COD. 

D.P.Johnson £03)2444152 

7655 S.W. Cadarciast Si., Poilland, OR 97223 



GREAT PLAINS COMPUTER CO. 




INFOMAG DBMS 

A data base management system specifically designed 
for microprocessor based computer systems. 



STYLOGRAPH 2.0 

The best word processor on the market today. 
STYLOGRAPH is an easy to learn efficient way of creating, 
reviewing, deleting and printing text. STYLOGRAPH is now 
available for the TRS-80 Color Computer!! 

STYLO 2.0 OS9. FLEX $295 UNIFLEX $395 Color FLEX $195 

MAIL MERGE 

MAIL MERGE OS9, FLEX, Color FLEX $125 UNIFLEX$175 

SPELLING CHECKER 

SPELL CHECK OS9, FLEX, Color FLEX $145 UN*FLEX$195 



FLEX version $295 



UNIFLEX version $395 



OSBORNE BUSINESS 
PROGRAMS 

ACCOUNTS RECEIVABLE ACCOUNTS PAYABLE 
GENERAL LEDGER 



FLEX 
$295 each 



UNIFLEX 
$395 each 



6809 Software Took Available.'! 



10% discount on 
cash with order. 



GREAT PLAINS COMPUTER CO. 

P.O. BOX 916 ( IDAHO FALLS. ID 63402 / PH (20*1 529 3210 
Vtsa and MasterCard accepted 



MS 



sa 



68* Micro Journal 



USER FRIENDLY UNIFLEX* COBOL SOFTWARE 

These programs will allow you the same versatility on your SWTPC computer as is available on a large mainframe 
syslem. 

They have been used and tested by virtually hundreds of businesses and are versatile enough to run any business. 
Dealers will find il extremely simple to introduce to your prospects and your sales should increase with the 
easeot operation and versatility of the package. Completely interactive. 

A TOTAL BUSINESS SYSTEM. 
AN EXTREMELY USER FRIENDLY, MENU DRIVEN SOFTWARE BUSINESS PACKAGE 



GENERAL LEDGER 
PACKAGE 

$995 


ACCOUNTS 
RECEIVABLE 

$595 


ACCOUNTS PAYABLES PACKAGE 

VENDOR PROGRAMS 

PURCHASE ORDERS 

CHECKWRITING. ETC. 

$695 


PAYROLL 

$695 



Detailed Descriptive Brochure 10.00 Manuals and Demo Programs 100.00 

Dealer Inquiries Invited 

AT LAST! ! ! A COMPLETE AND RELIABLE 

BACKUP & RESTORE PROGRAM FOR UNIFLEX 

This program will download your entire hard disk or selected directories to lloppys. creating all directories with- 
out bombing out when disks fill up. Restore reverses the process. Backup has many unique options which allow 
you to tailor the procedure to meet your needs Compatible with any UNIFLEX system. 



Manuals $5.00 ^ZJ W^Ff^ T J7 J\ Programs $75.00 

&M Kj Ks M A/1 (Manuals Included) 

SYSTEMS 
BOX 333, EAGLE, IDAHO 83616, PHONE (208) 939-8813 

' Unit lex is a trademark of Technical Systems Consultants. 



MOOS COMPATIBLE 

PRINTER INTERFACE 

PARALLEL/SERIAL 
Makes a Serial look like a Parallel to MOOS 




wooEi RIM 

« Company Moioroii EXORcrsor compihWi no »frwir« patents required 
■ 3 mode* ol optrohon Ccnlfonicft parallel R$ 232 C. ind 20mA currant loop 
< 6 baud iitaa . no ISO 300. 600. 1200 2400 4800. and 9600 
« AS 232 C hindinik+nQ • CTS or XON/XOFF {0CI/DC3) 
• 20 mA handshaking - XON/XOFF I0CI/DC3I 

Assembled and Tested (includes all catfet) $349 00 

Bare Board w/ Documentation S W 00 

803-879-3228 
CONCURRENT TECHNOLOGIES CORPORATION 

P.O. Box 1143 Taylors, South Carolina 29687 



CP/M ON THE SS50 BUS 



META LAB 

2809 SOFTBOARD SYSTEM 
CP/M SOFTWARE ON SS50 BUS 

FEATURES 

— RUN CP/M ON YOUR SS50 COMPUTER 

— INCLUDES CP/M 2.2 W/TH EDITOR, 

— ASSEMBLER. DEBUGGER, UTILITIES 

— FULL SOFTWARE SUPPORT AND USER 
DOCUMENTATION 

— COMPLETE CP/M REFERENCE MANUALS 

— STANDARD CP/M DISK 

— Z80A MICRO OPERATING AS A 
COPROCESSOR TO YOUR 6809 

-ALL I/O THRU SS50 SYSTEM DEVICES 

— EASY TO INSTALL 

— ONE YEAR WARRANTY • S595 

Available on Gimix DMA63 and SMTP DMAF2 56K 
Contact us about other configurations 

OTHER PRODUCTS ON SS30 BOARDS 

• ADC 1200 12 BITADQ 16 CHANNELS 25 uSec $795 

• DAC 1220 12 BIT DAQ 2 CHANNELS, 10 uSec 1395 

• GPIB 4600 IEEE 488 CONTROLLER 



A 



These ere industrial Quality Product*, 
Dealer Inquiries welcomed 



13G3J449-171 1 

6U2 L> COUNT V LINE HO AD 

LONGMONT, CO8O501 



'68' Micro Journal 



59 



•f«l*f«l*f«t«t*I«t«I«t«t*I«t«I«t*I*I«t«I«t«I*I«t«Ut 
F&D Associates si0 1 CBUr Mw | 
1210 Todd Road *"""' '% 

New Plymouth, Ohio 
45654 



Vil 



1 14 592 5721 
S«nd for fre* Catalog 
•* Matter C he ro,e ~ C.O.D. 



£ 

2 

v 



V COLOR COMPUTER DiSt DRIVER BOARD 

£ Uming »xp«rivnce gained hi th our S30 dimk 
• control ltri, we? havi dtvtloptd a controller -for 
7 urn* Hith th* Color Cort»Pute?r« 



1792 



or 1797 FDC chip and the? 



« The? RDC-i uifi 

mm n»w SMC9216B tingle? chip data separator which 

J£ u a much lower comt than popular chip mot 

# separators and 14 all digital. The board also 

# has digital nrjtt pracomp so no adjustments are 
y required. 

9« The board accepts either a 24 or 28 pin ROM or 
£ EPRON allowing up to 16* of on-board memory. 

# It is completely Radio ShacK compatible if the 
7 RS Disk Extended Basic ROM is used, Ms mi 1 I 
•J? have loUnart to operate FLEX* without Extended 



«r 


Basic and Disk Extended Basic using our 


FADBUG-C 


monitor. Others have it 


now for 


o 


operating 


with EB t DEB. RDC-1 is compatible. 


A 








• 


RDC-1 


bare board, doc, and 9216B 


•49.30 


# 


FDC 1797 


controller chip 


S30.00 


V 
V 


DEBROM 


Di'ati Ex Basic ROM 


*33.00 


BDCASE 


case for board 


ft 7.30 



j> add *3 s/h. Oh res add 3 percent. 

# i Trademark of Technical Systems Consultants 



SOFTWARE.. 
* HARDCORE 



•• TOOLS FOR r*0ei£* SOLVCTS ■• 

oo FIRST ~- You heve • problem — OH WOE I 

oo SECOND — Of courie? Um • computer I 

oo THIRD — Choose the best herdwere — • 6809f 

oo FORTH — Cno«me the «ost UMful toff Mm. 



> FORTH - A TOOi FOR CRAFT9CN1 

— o Join the thousands of problea) solvers who 

heve discovered the FORTH eat nod of producing 

results, Instead of laoedteents. 

tFORTH It ■ refined version or FORTH Interest Group 
stenderd FORTH for 6B09 (end 6600); 30$ faster than 
FIG-FORTH, severe I ties* faitar than BASIC. 

FORTH la unlftu* a*ong cowputar lenguagas In many 
respects, not tha laatt ot which la that it was created 
by problea solvers to help the* on with thalr tasks, 
rathar than by coiputar ac I ant lata. 

FORTH eppl Feet Ions hava spanned a wide rang* of tasks 
listening to galaxies, telMng with dolphins, 
naming robots, controlling production line eechlnery, 
and sophisticated graphic* sysfees. 

Users of FORTH reoort productivity gains of 2 to 10 
over otfker oevelopaaint tools. HrWORTHltal Is tor the 
progreeMr «9vo needs to sqeeeie the ■ost'tnto rose. 

®lFORTH and firmFORTH art tradama/ks of Talbot Microsystems 
"FLHX is a trademark of Technical Systems Consultants, inc. 

TALBOT MICROSYSTEMS 



5 MEG 
HARD DISK 
$600 



00 



$400°" 

QUANTITY 10 



This is a new Shugan SA-1002 S 33 megabyte hard disk drive Interlacing h lo your 
6009 system is a snap with the Weale/n Digital W0 1 00 1-65 intolttoent controller 
card ($350) Mow to" articles for the SS-50 BUS can be found in this magazine by 
Zeff (Sept.. Nov 82) and by Graves (Oct 82) We can supply drives. ccniroHera. 
cables, power suppto and enclosures separately or in compter pecMpes We 
also have irXerteces kx the IBM PC, Health 6990, S-100. Apple II and STD BUS 
Send $22 tor oompteie manual set 




Computer 
DYNAMICS 



105 S. Main Si. Greer. SC 29651 
Ph. 603-6777471 



tFORTH® 

THE PROFESSIONALS CHOICE 
from the author of 6809 fig-FOR H 
TALBOT MICROSYSTEMS 



> tFORTH SYSTB4S < 

for nil FLOf systems: GlMlX, SWTP, SSB, or EXORctsor; 
or convert to other systems, specify 5 or S Tnch 
diskette, hcrdnrt type, and 6B00 or 6609. for 
standalone versions, urlte. 

Manuals aval labia separately * price In (). 

Add $5/syste* for shipping, $12 for foreign air. 

•• tFORTH - extended fig FORTH <l disk.) StOO <$1 5) 
with tig line editor. 

•• tFORTH* - expended noral (3 5" or 2 S« disks) $290 
($23) 

Include* 2nd screen editor, assembler, extended dete 
types utility vocabulerles, G0IKJ FORTH CAI course on 
FORTH, oses, end debugging elds. 

■■ TRS-80 0OL0RF0RTH - available fro* The Ulcro Works 

> Am iCnTIONS PROGRAMS < 

•■ flrnFORTH - 6809 only. $350 <$10) 

For terget coup 1 1 et I ons to roevwbla code. 
Automatically deletae unused code and unneeded 
dictionary Information. Includes full source code for 
terget co*$Mar end essentlel FORTH nucleus. Requires 
but does not Include tFORTH*. 

•• TIW PASCA*. coBOller In FORTH. 6*00/09 $?9 ($20J 
•• FORTH rR0<F*e4|NG AIDS - elaborate decospl ling end 
progrea analysis tools $190 ($101. 

•• Also svelleble: code for tloetlng point, tleers, end 
reel tin* programing. 



1927 Curtis Ave., Redondo Beach, CA 90278 <213t 376 9941 



60 



'68' Micro Journal 



*** NEW 6805 ALL CMOS CARD *** 



D6-1S US-*)* 



cd m 






a aaoiaan^a ^ Of 






® 



»»»I« « o 



* L - ' <P— l o| 

* °C popt I I 1 PI IT * L ~ \ ul 

™ f " " I ^— ? ' 



[ ™ — I 

■^EPPQW / PAH 

r i7i* / tut 



dS a a Uf 1 , 

a a *. «, ^L POUT I u3 



c 

<>■>■• ci «■ 5 ■» a Q 

d D C» KB KB g n a I* 

ei a a d e» " a c* " 
000003° a [ 



HDU o a p)[ 1 



■ 
as 



* * jep poh / hah 

• * | 2714 / (IK 



innHo o 0f~" PORT 1 f \ 

ioo^o O 1 POD k US " _. 

!SS ¥ S a ■:<"--— H f'^in I 

■ an a a I •• J ^^^~ "^^^ l_l 

:ss«s s °C F5Sr n c 1 



o : *D 



U21 
)EPPOM / RAM 
7716 / 61U 



20519 



^ 



\ UiS 
rCDt07B 



, ■ * 



1 

\CPItOM 

r ? ?i6 


/ 


PAH 
6116 


1 — 







u uandl 



o a 



« <>« nn » ao J POP I S U7 

a annna r* « f T*" ^"l f 74lcJ7J /^\ 

a a a no a «. a — OL Uli »« 

C» E» C» # * * • ••» * * V " 

© ~ 

^-^ SS - SO SUSS COWNCCTOR 



r^ j 

r 7 74,el73 



> 74U24< Qj 7414244 O) 74ls 



mO 



© 



CPU-S-P Blink card vith docu-tnt-t ion 54$. 00 

CPU-S-P Partial card (parts --.rfcfd ■« not incl.t $22$, 00) Includes CPR.OH Monitor 

CPU-S-r full card with all »arU aho*#« U.l ly ••••»bl<d^ SJ49.00 1 and US vac Power Pak. 

CROSS-ASSEMBLERS for T\.t% <(c] TSC» 680$ •y«t«* 5IS0.00 



SO FTWAR E 
VDlSK Tr»it «rt«nd«d namorr av «■ 

•up* r (4*1 dlik drlfi 
&809 fourci 4 oM*ct HO 00 
6*0* oblacl * ft 00 

OUTSIOC PtODCM PROGRAM Incl fourci 
UnlFLCK vinion tlOO.OO 

FLEX vtrtlon 4600 4 460? I SO. 00 
HAYCS SMART MODEM I24» 00 

CROSS ASSEMBLERS Cor 4 6 0.4601.4103 
run. on 4607 TLZI 1130 00 

TV-EDIT Scrim orltntid Editor 
(or TLCX 460? I f3 00 

P.«4«« ipiclfy 3- or »*» Dlak whan 
pitting ordar 



C H I S»3 
Pltiii not* whin ordering IC*a 
that a tlOO.OO Klnlaui la In aCCact 
Ordara laaa than Ina minimum will 
ba chirgid an iddi tioml 110.00 for 
hindl 1 ng 

4U4P-3 2MKZ 113 SO 
2014P-2 2MKZ ItO.SO 



NCV MEMORY PRICES TO INTRODUCE VDlSK 

S-R/R without mamory chip* 1120.00 

with 6K NMOSt2MH2 tl4t 00 

with 14K NMOSt2MH2 lift. 00 

with 32K NMOS92MHZ t2tt 4 00 

with «6K NMOSt2MHZ 13?» 00 

Bin Cud i 4jf 00 

tiUndtr Cirdi intab with logic aid 

SS-30/30C I 23,00 

SS-30 I 23.00 

SP-1 Prolotypa Board A/T tltS.OO 

SP-1 Ban Card l 4t 00 

SS-30 Vira Vrtp Board B/C t }f 00 

SS-30 VI ra Vr*p Board B/C t 20,00 

4602 Supar CPU A/T 1233 00 

6602 Supar CPU B/C I 3f 00 

Vldao RAM. B/C tit 00. A/T HtS 00 

Paralltl I/O. B/C K» 00 A/T I13t 00 

SS-30 Btcrplanti i,i. 6. 12.414 poaition 

9 13 00 par alot w/o connactora 

SS-30 6 poi BP w/o connact l 3f 00 

Tranaltion Card ii* 00. A/T I t3 00 

Molav Cold Mala tl 40. Tamala f \ 40 

Molat Tin Mala I 40. Famala t 30 



2714 1MHZ 1 4.30 
2714-1 2MHZ 114.30 



1 44603E1P 


123 


.00 


46B02 


1 1 


00 


46B0t 


123 


00 


46B21 


♦ 4 


30 


41640 


♦ 12 


00 


66B30 


6 4 


73 


74LS440 


t 3 


23 


'66' Micro Journal 







THOMAS INSTRUMENTATION 

168 EIGHTH STREET _ AVALON. N.J. 0»20 2<6O9l 967-42U0 
Nj RES. INCLUDE 9% SALES TAX 

ABo* 3 Wfffci tm Cfcrrki I* Clti* 

CONT. USA INCLUDE SJ.OO SHIPPING. CANADA S6.00. FOREIGN Si 
MASTERCARD, VISA, and C.O.l>. ACCEPTED 
Sand 120 00 to rtcilvi Cull doc uma n t a I I n , ichina 
liatinga (or all board* currently In pro 



2.00 



t 1 c ■ , 6 aourca 

duct ion 



€1 



CORN 



* 



COMPUTE P 



BVBTEMQ 8S-SOC 



DUAL PIA foga 

SS-30 '1 

BjC. W/Molex pH 
Con. $24.95 





111 

fftitt 



168K 

PROM 

21-2764 s 

<i SS^SOC 
B.C. W/Molex Con, $39,95 



Writ* for FREE Catalog 

ADD $5*00 S£H PER ORDER 

WIS- ADD 5\ SALES TAX 




ca^ 



11931 W. BJuemound Road 
MILWAUKEE, WIS. 53226 
(414)257-0300 




Basic Aid 



An excellent program 
and fine utility." 
Rainbow Review -Aug. 82 

Smtle control key mptit of 
BASIC coiftintfs. $34 95 



Spectrum Stick 

"More like arcade joysticks 
than anything we've yet 
encountered." 
Rainbow Review- Oct.82 

Response and cootrol put the |oy 
back m color conpulrnf S399S 



CAU NOW 
?1? 441 2S07 

FOft FAST 0EUVERY 
All orders plus I? snipping 



Colorcom/E 

"Out of thousands of programs, 
this program,.. SUPER f 
80 US Review-Nov.82 

A smarl communications package 
Disk or Rompack S499S 



CoCo/EAD 

Color Computer Editor, 
Assembler and Debugger s*95 

Spectrum Paddle 

For quicker site-to side action 
and higher scores. S1995 



SENO TO 
DEPT.C2 93-15 &6T* DRIVE 
W00DHAVEK, NY. 11421 

NY residents add sales tai 



"68* MICRO JOURNAL ADVERTISERS INDEX 

'68 r MICRO JOURNAL 52.55 

AAA CHICAGO COFUTER CENTER 8,9 

ACORN COMPUTER SYSTEMS 62 

ALFORD A ASSOCIATES 49 

CHICAGO COMPUTER PRODUCTS 57 

CHIRATECH SCIENTIFIC INS1RUEMENTS 51 

COMPUTER DYNAMICS 60 

COMPUTER SYSTEM ASSOCIATES 50,55 

COMPUTER SYSTEMS CENTER 56 

COMPUTER SYSTEMS CONSULTANTS, INC 47 

CONCURRENT TECHNOLOGIES CORP 59 

D.P. JOHNSON 58 

DATA SYSTEMS "68" 63 

DATA-COrf» SOUTH EAST MEDIA SUPPLY -44 ,45,47, IBC 

DIGITAL RESEARCH COMPUTERS 54 

F & D ASSOCIATES 60 

FRANK HOGG LABORATORY, INC 5 

GIMIX, INC 3,64 

GREAT PLAINS COMPUTER 00 58 

HAZELWOOO COPUTER SYSTEMS 06C 

INTERFACING TECHNOLOGIES, INC 63 

INTROt. CORP 48 

JPC PROOUCTS CO 51 

LOGICAL DEVICES IMC 63 

LUCIOATA Ltd 48 

*€TA LAB 59 

MICRONIX SYSTEMS CORP 52 

MICROWARE SYSTEMS CORP 4,20 

OPTIMAL TECHNOLOGY 58 

PALM BEACH SOFTWARE 48 

PRIVAC INC 6 

ROBERTSON ELECTRONICS 52 

SMOKE SIGNAL BROADCASTING 7 

SOFTWARE CONSULTANTS 46 

SOUTHWEST TECHNICAL PRODUCTS OORP. ...IFC,32,33 

SPECIALTY ELECTRONICS, INC 50 

SPECTRA SYSTEMS 59 

SPECTRUM PROJECTS 62 

STAR-KITS 44 

SYSTEMS OESIGNWARE 50 

TALBOT MICROSYSTEMS 60 

TECHNICAL SYSTEMS CONSULTANTS, INC 1 

TERMINUS DESIGN, INC 55 

THOMAS INSTRUMENTATION 61 

UNITEK 51 

UNIVERSAL DATA RESEARCH, INC 46,53,57 

WINORUSH MICRO SYSTEMS LfMITED 57 

WORD'S WORTH 47 



This Index Is provided as a reader service. The 
publisher does not assume any M ability for 
omissions or errors. 



62 



68' Micro Journal 



DATA SYSTEMS 68 



CHECK OUT THE NEW PRICESONTHE BEST BARE BOARDS AVAILABLE ! 

(THEN TRY SOME) 

8" DOUBLE DENSITY DISK CONROLLER- $50Qo 
5 1/4" DOUBLE DENSITY DISK CONTROLLER -$50 OP 
DMA INTERFACE -$32 QP 

64K DYNAMIC RAM BOARD - $50QP 
6809 CPU BOARD -$45QO 
MOTHER BOARD- $65°-° 
6845 VIDEO DISPLAY BOARD -$45<>o 
6847 VIDEO GRAPHICS BOARD-$45QP 
DUAL SERIAL I/O BOARD-$25QP MULTIPLE I/O BOARD -$40<>.o 
MODEM BOARD- $30Oo 30&5O PIN EXTENDER BOARDS -$25QPea. 



•All Boards for lheSS-50 Buss 
•All Solder Masked Both Sides 
•All Silk Screened Nomenclature 

Data Systems "6S" 

2316 OlvsnlfM Wly 

Oris ndo, Florida 32804 



•Full Documentation Included 
• Visa& Master Card Accepted 
•Add S2°-° fort. O.O. 



/&/ o«,425-6800 (8j 

Florida residents add 5% sales lax. Prices effective Febuarv L IWtt 



♦Add S4QP for U.S. Shipping 
•Add $5<L° for Canadian Shipping 
•Add S10QP for Overseas Shipping 

OiUi Sytt#mt ^ar 

2316 DMk»NM Way 

Orlando, Florida 32S04 



fUV EPROM ERASER 

$49.95 



N 



* Em» fw ii tmmt is 1 



• tmm +\NmQ*n |*71| THI. 7310, ?fttt gie) 




INDUSTRIAL MODEL 

00V-T8/2N 
$68.95 

WITH TIMER AND 
SAFETY SWITCH 

0UVT8/2T 

$97.50 

IWTELLIGENT 

PROGRAMMER 

STANDALONE 

RS-232 

* RELIABLE 

* EASYCDffhwi 



PROGRAMS ?508. 25*6. 2532, 2716. 27C16, 27C32. compatible 



7TSL 2732A. 2758. 8748. 87«*t 8748H 
OPTIONAL MOOULK 2564. 2764, 8TOA, 8741 

* mm alow em m amrnmn owtwjl 

* UPUM/»W«JMMB«|TM0U«MTaHOf«lBU 

* HCMMOCtUOft MStD * s « MTTMUl ftAM 

* tC OAT PftftTf I LAMM MUMANTV OK *LL nUOuCTl 

soOrvroefflfLMSEO 
PH0MPROa 12BK Version $689. 



RDL TBTOWHCS, M0$ 

(MCS-48) 

T*OG RAWING 

PfVCE tNCLUOES 

PERSONALITY VOGULf 



S439.00 



LOGICAL DHVICM INC. 

781 W OAKt AND PARK BLVO ♦ FT, LAUDERDALE, FL 3331 \ 
Phone Orden 006) 776-5670 • Tel. t bo of 1M/1983 (305) 97*0967 
. TWX: 51^955-9496 . 



a 

D 

a 

D 

a 
a 
a 



FINALLY for 6809 

LATEST TECHNOLOGY 

yet AFFORDABLE 

REMOVABLE 5 MB WINCHESTER 

Host advanced Winchester drive - 3.9% with 
RENQVABLE cartridge or FUED Media 
Stall sue - hall Minifloppy lore 
Lou power consumption - low heat, no noise 
Requires standard Minifloppy power - 5V,I2V only 
Intelligent Microprocessor based controller with 
sophisticated diagnostic functions 
Fast data access by buffered seek oode 
Operates with all eii sting CPU speeds 
Expandable to include lore drive* 



complete subsystem is available for FLEX 
including software - $2395.- 

(514)737-8787 



interfacing technologies inc. 

F.O.BOI 576 SnoMdon 

4B90 Bourret Ave. Nontreil Quebec, N3I 3T7 



'68* Micro Journal 



63 



The GIMIX CPU III Card 




Watch this space for Systems featuring this CPU and GIMIX 

Intelligent I/O Cards 



s 






3 



The Original FLEX for Color Computers 



' Upgrade lo 64K 

* RS to FLEX, FLEX lo RS lite transfer ability 

* Create your own character sel 

" Automatic recognition of single or double density and single of 
doubled sided 

* All features available for either single or multiple drive systems 

* Settabie Disk Drive Seek Rates 

' Faster High Resolution Video Display with 5 different formats 

* Save RS Bask: from RAM to Disk 

* Move RS Basic to RAM 

* Load and save function on FLEX disk 

* 13 Supporl Commands 8 with Source Text 

Languages Available 
Pascal, Fortran, RS Basic, RS Assemblers TSC Basic, TSC Assemb- 
ler Relocating Assembler. Macro Assembler, Mumps 

if you am tred of playing parries on vol* TRS-80C Color Computer, or fcrtd ihal you are 
handicapped &V "* I'mileliona of the RS BASIC ir» lry>ng la wnlea Program Ihat will allow you to 
Artunlly USE Ihe Color CowpulW as a COMPUTER VOU ARE RCAOV TO MOVE UP TO THE 
FLEX9 ' Quw niiiK] System II you wanl to have REAL PROGRAMMING POWER using an 
Ertrenwiy Powerful BLtainsaa BAS»C PASCAls CCo prlers a lufl-hlowm Macm Assemble* 
vrtlh a Library capably so you are notcortlinucttialy rainveribiiOlh* wheel YOUAREREA Y 
TO MOVE UP TO THE FLEW " Opflraung Sysiem If you would Irke lo see il YOU REALLY 
COULD USE A COMPUTER IN YOUR BUSINESS or begin to make you* Computer start 
PAYING IT S OWN WAY by doing tome Computer Work lor the m.N«yis ol smaM bosnesses 
eiound you such aa Wotdprotetsiiig Payroll Aaoummg. rnvertory. c*c then YOU ARE 
REACT TO MOVE UPT0THEFLEX9 Operating Syslem Mowr> DATA COMP has the way 

DATA-COeJP i f LE X9 " Conwennon tor |ha TRS-80C Color Computet was dengrwd for itie 
SERIOUS COMPUTER USER, with fealures line greatly increased OrspJay Screens With 
Lower Cat* letters to you can put a FULL Menu on ONE Screen, or see SEVERAL Para 
graphs at in* tame time; with leases <** providing a FULL Keyboard to you nave FULL 
Control of your Compuf*f AMD rt i Programs NATURALLY vrttxHitneetftnge chart to see what 
Kay Cortfcwiatron wtfl qrt* you what function witn USER ORIENTED functions lo make utmg 
tht Operafmg Syllem natural Ma having me Computer AUTOMATICALLY d e l em i m e wftaf 
type ol Otsh i* being used n what type ol EH* Drive and worhmg accordingly rather thai you 
have to specify each and »v»ry thing for it or fake having the Computer mxk with the Pmfer you 
have bean u«*tg aM along wl hour you having to tot |Nb new Operating System wnai is mere, ale 



DATA-COUP has everything you need to make you* TRS-80C Goto* Computer WORK 
for YOU; Irom pgtm end Piece* to Full. Ready To Uee SYSTEMS, OATA-COMP designs 
eetie, services, md SUPPORTS Computer SYSTEMS, not jutt Software CALL data 
COMP TO AY to make your Computer WORK FOR YOUf 

System ft#gu*r#m#oii 

FLEX* Special General Vetuon * Edarx & A*aen*j*w «whch <wnaty seA lor $5000 

eM $15000 
F-MATE<RS) FLEX9 Convers** Rout tor the RS O** Oontmaa* 

when purchased with Spvoal Genera) FLEX9 Sys STO95 

when purtnaeeo wi*v*»1 Ihs General R.EX9 Sys $7*95 

S»1 ot Eighl e4K RAM Chape w Mod ITOiruclmns K9.96 

Color Computer wKhMK Ham and EXT BASIC SaMM 

Color Computer with 1*K RAN $289 95 

Color Compvt r wrtth 1€K RAM and EXT BASIC 1389 95 

SPECIAL SYSTEM PACKAGES 

84K Radio Shack COLOR COMPUTER . Radio ShkckCOLOR OtSK CONTROLLER, a Disk 

Drive Syatem, Special General Version of FLEX9 . F-MATMRS) end a Box of 10 

Double Density Diskettes e COMPLETE, ready lo run SYSTEM on your Color TV Sel. 

11249.95 

DISK DRIVE PACKAGES etc 

mesa Packages incl ude the Rede Shack Disk Controller, Disk Drives with Poin*< Supply and 
Cabinet, and Disk Dtivo Cable 

PAK • 1 I angle Sided Oouble Density Sye $499 95 

PAK a 2 2 Single S«Jed Double Density Sys $789 95 

PAK *3 1 Oouble SKtod Oouble Density Sys $599 95 

PAK #4 2 Oouble S«oed Double Density Sv*. $94995 

PAK #* 2 Qwme Thlnlme Double S«d*cl Oouble Oenstfy Sys. $764 95 

PARTS ANO PIECES 



Rexao Shack Otsk ortroiler 

i Tendon Smote Saded Oouuts Oanstfy D«sk Drive 

1 Tendon Double Sided Doub* Dena»ry Drsk Drrve 

i Oume Tnvikne Ooufae S*ed Otmaae Oansey 

Ssn^ae Dnve Cat-net with Powet Suppry 

Oouble Onve Cabwt w ith Power Supply 

Smgie On^ Disk Cable kv RS Controller 

Double Dove Disk Cable tor RS Contro*krr 

Mfo Tech Prods to LOWER CASE ROM Adapter 

Radio Shac* BAS9C Version It ROM 

Raojo Snac* Eitenoed Base ROM 



$179 95 
$24995 
S3499& 

$279 95 

S69 95 
$109 95 
$24 95 
$34 95 
$74 95 
$34 95 
S6996 



TERM — AN External Terminal Driver is FREE with purchase of F-Mate 



PRINTERS 

The Epson MX-80 

$495.00 

The Epson MX-100 
$725.00 

MX-70 $355 00 MX-80 FT $57500 

it 

Color Computer External 
Terminal Program 
$19.95 

if 

Color Computer Stylograph 

Running Under F-Mate 

$195.00 



SOFTWARE 
CHESS & 

<£) 6809 ^# 

Reouiiee FLEX" and one or ihe loltowmg CRT lermmais 
Now Runt On Any Type Terminal 
Feature* 
' Two diapiey boerde 
< Four level a of play, 

• Polm acoring ayatern 

• Ptay while or black. 

• Change or eel-up boorda piece poUliona. 

• Forfed move. 

• Swap aidea 

• Make move **4 awap aidee, 

• Change iklll arvei 

• S*op and ret ten qmi*. 

• Solve Male Hi 12 3-4/ movei. 

$79»5Speoty 5 or d disk 

Thia fa on* of the ettxtgoet CHESS program* running 

onanymkrocOmpuier>estlmaieduacFRatirigi900 . . 



OieT-TRAC Forecaster 

A Diot Planranq and Aria»ysis Program 

KT TRAC Fo nci lW f 4 * pogram |h*i p\tr* m d*t <r. iprrm o* 
«#w utow and pvom*^ d | *tof>c**t*» p&9<«% tr< itn% 
PC P F Vj » arkm« erf C**tK>*f0r«ti *>&** v< F* leotf *« 

dWlQWqi 9*ff & ** -I tWMC »QQd fffQupi l> IBi'lE H QfW m««| 
eur*> Mh fruit «nd Wl 'or I lpK«k 4f4«4j«i 
S*i Aft m«n P'iMfti we^rn f r*m# &^« Aot4 T lm m<3 

IdIV **>9ft *ftd ILMlBirww CSIOrwt kw fTy ++#* of PW lHOV* 

tf*«lw*i art ca«cwiBl*d *h#n a >»qN goti <» ^tn i^rr^o g** v 
Idul •rtd*tik>'*c 1 !*n >*gp«KJuDO^btFw*#nm*{-d<n0uMr indlh* 
ir**riu^' ir>« «jmti»r or dan m r« k h in* *^jw go* 4 crott^td 
Th» HvIaq jno enOing r^t qi «*«gH Xn» H t*Jc w'tlM >nd ft d*- V 

- -pi «*c^ d*v ' p«*tficiea *aigw lo* * >o tf*t p*n«t i 



FLEX VERSION 
Uftrf LIK VERSION 



DATA-COMP 
SOUTH EAST MEDIA 

P.O. Box 794 HIXSON, TN 37343 
1-6 15-84 2-4601 



Verbatim Diskettes. 



S Bon s«cto< Oieke 
Sin9»e Sloe Skngi* O^airy is 7S ee 
Singly firto DovQiie Oenaiiy 17 75 •• 
Oquo* S«4a Ooubto Owimtiy M 97 ee 
Piatlic Slor»g» Bex to 00 •• 



• Soil Seclor 0*eka 
Stngla Site SlngJi Den»lty » 75 ee 
Single Side Oouble Oenetly J4 10 ie. 
Double SleSc Ooohie Oert aUy $4 75 ea 
Plailic Ubrary Bar (9 00 aa 

Foreign Ordirt Add 10% Surl*c»-20% Ah Mail 



WINCHESTER BACKUP UTILITIES 

The loiiowing ublibes allow the backup ol any sire 
disk syslem lo any aize diskettes, 

Byaimpiy ineerlmg diskettes as requested by COPY 
MULT a *e/ye osk syslem (WvKhesrer, etc J may 00 
downtoaded to your present r^oppy disk system any 
sjie No twd 10 h*»« wiih dtteclory de%t«ona or eny of 
we othe* todous opefaaoTts ihal musi be none usetg a 
normal copy rouurw 

COPYMULTCM0 umfc'sia/ffc noftnaJ copy syntax 
and arrays keep* up vwjh lees ataady eop«d by m&n 
Itfing director*?? (Or Doth host and recewog disk syi- 
lam tfius e anwi an ng hours o* ledtous keyboard entnva 
and other Ume consurwng cleanup chorea 

BACKUP-CMQ is a specni proo/am that downbad* 
random type file*, any size 

RESTORE. CM0 a special program to restructure 
copied random friOS tor copying oc reecpying back lo 
the host aysiem 

FREEUNK-CMDa bonus ufiliiytnat relinks ihelroe 
Chain of a floppy or hard disk t1*ereby eliminating itag- 
mentation 

•• Completely documented source flies Included, 
" ALL 3 Programs S99.S0 on 8 diskette 



Data-Comp— South East Media & 68 Micro Journal Are Divisions of CPI 



68 Micro Journal 
S900 Cassandra Smith 
Hlison, TN 37343 






IBM* Ml 



Second Class Postage Paid 
Al Chattanooga TN 
ISSN 0194-5025 






^nifi 31IHM 

Vv ??^oqo 



— HELIX 










II 






H»W0» «M*M** '■*"■ 


MHfl^^^i 








^^ 




THE MAINFRAME TM 

• Industry Standard Optima Cabinet 

• Largest Constant Voltage Power 
Supply in the industry 

• S»64 Bus gives 16 Bil Power and 
S-50 Bus Compatibility 

• 10 Main (S-64) Slots 

• 14 I/O (S-30) Slots plus 2 On-board 

• On-board Baud Rate Generator 
to 38 4Kb 

• Space and Power tor two 5tt' Disk 
Drives 

• Full Address Decoding for I/O Slots 

• Two RS-232 Serial and Two parallel 
Ports Onboard 

• Single Board Construction for 
Reliability 

• faraday Shielded Bus Lines give 
Text Book Clean Signats 

THE PROCESSORS 
6809 

• Standard 2 MHz Operation 

• Standard DAT Compatible with 
GtMIXandSWTPC 

• Standard 6840 Interval Timer 

• Standard 1K Scratchpad RAM 

• Standard Clock/Calendar with Battery 

• Provision for Programmers Console 
68000 

• Standard 8 MHz Operation 

• Memory Management Hardware 

• Provision for Programmers Console 

• 16 Bit Power and 8 Bit Compatibility 

The HELIX™ computer system represents the latest advance in S-50 
bus computer systems. Relying on the physical nature of S-50 bus 
connectors to guarantee compatibility, the HELIX adds 14 bus lines 
(becoming S-64) to allow a 68000 processor to operate with full 16 bit 
data transfer and 24 bit addressing, while at the same time providing 
full interchangability with existing S-50 components. 
Offered with a selection of processors, memories, and peripheral con- 
trollers, a HELIX system can be configured for applications ranging 
from advanced hobbyist to multiterminal time-sharing 
Designed to offer the utmost in speed, reliability, and utility at a 
reasonable price, it represents a new standard of quality for those 
who require a professionally designed computer for professional use. 



THE POWER SUPPLY 

• Ferro-resonantTransformerfor Line Noise 
and Under-Voltage Protection 

• Conservative 25 Amps at 8 5 Volts 

• Conservative 5 Amps at ±16 Volts 

• Conservative Component Rating for 
Reliability 

THE COMPONENTS 

• Fully Socketed 

• Gold Plated Bus Connectors 

• Or ly"B" Series 68XX Components Used 

• Only Top Grade Logic Circuits Used 

• Industrial Grade Components Througho ut 



THE MEMORIES 
DM-64 

• Field Proven 

• Proprietary Memory Control Logic 

■ FullyTransparent Refresh 

• Tested at 2 5 MHz Operation 
DM-512 

• 512K Bytes on a Single S-64 Board 

• 16 Bit Power and 8 Bit Compatibility 

• Runs in Existing S-50 Systems where 
Physical Space Allows 

■ Full 24 Bi! Addressing 

• FullyTransparent Refresh 



THE PRICES 

Because of the variety of configurations 
possible, full pricing cannot be given Rep- 
resentative prices are' 



• 64K6809 HELIX. 



$1995 



• 64K 68000 HELIX , $2595 

• 512K6809 HELIX $4450 

• 512K 68000 HELIX $4995 



HAZELWOOD COMPUTER SYSTEMS 



907 E, Terra, O'Fallon, Missouri 63366 

Dealer and OEM Inquiries Invited We support our Dealers 



(314) 281-1055 

Oplima in nTmd« mack. Arlartt*